【问题标题】:how to draw a very short line with actionscript?如何用actionscript画一条很短的线?
【发布时间】:2009-03-06 13:19:55
【问题描述】:

我无法用 actionscript3 画一条很短的线:

var cSp:Sprite = new Sprite();
var cGx:Graphics = cSp.graphics;
cGx.lineStyle( 1, 0xFF0000, 1, false, LineScaleMode.NONE, null, null, 1 );

cGx.moveTo( 2, 10 );
cGx.lineTo( 3, 10 );

这会创建两个垂直堆叠像素,它们不是很红(#7f0000)!

vertical line? http://www.freeimagehosting.net/uploads/449212bd1f.png

(这里放大了:)

zoomed in http://www.freeimagehosting.net/uploads/5c9014a148.png

由于我试图画一条水平线,这不是我所期望的。我假设这里发生了一些别名/亚像素诡计。绘制一条非常短的线或一个像素的命令的神奇组合是什么?

注意:如果我将非常短的线设为 4 像素(或更多)长,它会按预期呈现(4+ 像素长,1 像素高,每个渲染像素#FF0000)

【问题讨论】:

    标签: apache-flex flash actionscript-3


    【解决方案1】:

    您是否尝试过使用各种 capsjoints 设置?您的 null/null 值将指示 Flash 使用圆形帽和圆形接头。 斜接限制的 [last] 参数“1”也将被忽略,因为您不会使用斜接接头。

    我建议先尝试 CapsStyle.NONE。然后可能是斜接关节。供参考:Graphics.lineStyle().

    编辑:也可以尝试使用像素提示

    【讨论】:

    • 谢谢。列举了所有的可能性,这就是诀窍。 lineStyle(1, 0xFF0000, 1, true, null, CapsStyle.SQUARE);
    • 我很高兴它在 20 个月后帮助了某人 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-27
    • 1970-01-01
    • 2021-06-18
    • 1970-01-01
    • 2020-11-22
    • 2015-09-28
    相关资源
    最近更新 更多