2010-06-13 37 views
1

是否可以将图形的笔划与actionscript对齐?例如,下面的代码会创建一个黑色圆角矩形,并带有灰色笔触,并自动居中对齐。ActionScript对齐图形线条样式描边?

var t:Sprite = new Sprite(); 
t.graphics.lineStyle(5, 0x555555); 
t.graphics.beginFill(0, 1); 
t.graphics.drawRoundRect(25, 25, 200, 75, 25, 25); 
t.graphics.endFill(); 

lineStyle函数似乎没有提供任何用于对齐笔划的内置功能。在Adobe Illustrator中,您可以将笔画对齐为中心(半满/半满),内部(边界内)或外部。 (在填充外边界)。

回答

4

这在Flash中不受支持(甚至在GUI中)。你将不得不修改drawRoundRect参数来模拟这种效果。

var strokeWidth:Number = 5; 
var strokeAlign:String = 'outer'; 
var t:Sprite = new Sprite(); 
t.graphics.lineStyle(strokeWidth, 0x555555); 
t.graphics.beginFill(0, 1); 
if (strokeAlign == 'outer') { 
    t.graphics.drawRoundRect(25 - strokeWidth/2, 25 - strokeWidth/2, 200 + strokeWidth, 75 + strokeWidth, 25 + strokeWidth/2, 25 + strokeWidth/2); 
} else if (strokeAlign == 'inner') { 
    t.graphics.drawRoundRect(25 + strokeWidth/2, 25 + strokeWidth/2, 200 - strokeWidth, 75 - strokeWidth, 25 - strokeWidth/2, 25 - strokeWidth/2); 
} else { 
    t.graphics.drawRoundRect(25, 25, 200, 75, 25, 25); 
} 
t.graphics.endFill();