は私がbeginGradientFill
とdrawRect
を使用してFlashでのグラデーションを描画しようとしているが、描かれている矩形は親の境界外の一部であるとき、勾配は全く描かれていません。Flash:グラデーションの塗りが親の境界の外に描画されると消えますか?
は、例えば、以下のコードを検討:矩形がcontainer
の範囲内で嘘を描かれているとき
function testGradient():void {
var g:Graphics = container.graphics;
var width:Number = container.width;
var height:Number = container.height;
var y:Number = 0;
var x:Number = 0;
var ratios:Array = [255 * y/height, 255 * (y + height)/height];
g.beginGradientFill(GradientType.LINEAR, [0xFF, 0xFF], [0.6, 0],
ratios, null);
g.lineStyle(1, 0xFF0000);
g.drawRect(x, y, width, height);
g.endFill();
}
を、すべてが動作します:
をしかし、矩形が外側にある場合コンテナの境界のうち、勾配はまったく描画されません。
...
var x:Number = 10;
var y:Number = 10;
...
はその後勾配が消える:たとえば、コードに変更された場合
親の境界内部ボックスを描画するために必要な計算を行う(定着のショートそれが正しいようにグラデーションをアップ)、これに対処する方法はありますか?