我有一个正在缩小的显示对象(不是图像)。它具有与图像缩放时相同的锯齿和锯齿边缘。有没有办法像平滑图像一样平滑显示对象?
更新
这是一个带有交互式子显示对象的交互式显示对象(精灵)。我无法将其绘制为位图。
我有一个正在缩小的显示对象(不是图像)。它具有与图像缩放时相同的锯齿和锯齿边缘。有没有办法像平滑图像一样平滑显示对象?
更新
这是一个带有交互式子显示对象的交互式显示对象(精灵)。我无法将其绘制为位图。
您可以尝试通过向其添加 Matrix3D 变换来强制显示对象进入“3d”模式。最简单的方法是简单地给它一个 rotationX 值:
myDisplayObject.rotationX = 0.0;
您还可以尝试检查形状上的“提示”框(有时这会使圆形和椭圆形变得有点奇怪,所以这是一场赌博),您可以尝试从渲染下拉列表中选择“缓存为位图”。
使用 Pixel Blender 对精灵进行双三次重采样?
http://blog.onthewings.net/2009/08/25/bicubic-resampling-by-pixel-bender/
你试过设置stage.quality = stageQuality.High;
吗?此外,如果您这样做并且想要手动设置平滑,您可以尝试Lanczos 重新采样功能(我没有做到)。
警告:你不想在每一帧都使用这个函数,因为它的性能很重!
首先,您需要使用 BitmapData 将 displayObject 绘制到位图:
var bmd:BitmapData = new BitmapData(dispObject.width, dispObject.height, true, 0);
//Create new bitmapData with the same size as your object and with transparancy.
bmd.draw(dispObject);
//Draw you displayObject onto the empty Bitmap
var b:Bitmap = new Bitmap(bmd, true);
//Create the bitmap container and load the data, and the true turns smoothing on!
addChild(b);
//Add it to the stage and now you can use the scale and width variables like this
b.x = dispObject.x;
b.y = dispObject.y;
b.scaleX = dispObject.scaleX;
b.scaleY = dispObject.scaleY;