我正在 ActionScript 3 中构建一个简单的白板应用程序。ActionScript 中的大多数白板或绘画应用程序倾向于使用间隔、计时器、mouseMove 事件或 enterFrame 事件来跟踪鼠标位置并在跟踪点之间绘制线条或画笔.
我想要实现的是像 Photoshop 这样的程序可以在使用画笔工具进行绘画时渲染出漂亮的平滑画线。在 Photoshop 中,无论您在画布上移动鼠标的速度有多快,绘制的线条总是以平滑的曲线边缘结束。在我的应用程序中,使用前面提到的任何方法,将画笔渲染到舞台的函数调用之间总是存在延迟。因此,当以圆形方式非常快速地移动鼠标时,使用这些技术中的任何一种都可能导致尖锐的拐角线。
这对我来说并不奇怪,我只是不知道如何才能像 Photoshop 的画笔工具那样实现更平滑的线条。请注意,我的应用程序的画笔主要基于形状,不使用或不能使用绘图 API 来绘制连续线条。换句话说, graphics.curveTo() 不是一个选项。我还将画笔生成的 Sprites 或 Shapes 渲染到 BitmapData 实例。