我将DropShadowFilter
应用于Adobe AIR 3.5,ActionScript 3 Mobile项目中的位图。在大多数情况下,它工作正常。然而,偶尔会在底部或右侧略微切断图像。
见这些图片:
vs
如您所见,应用投影时会裁剪右侧和底部。是否有一个原因?还是一种解决方法?
编辑(MST 2-27上午10:30):作为快速更新,它也会与BlurFilter
一起发生,并且可能是任何其他过滤器。
答案 0 :(得分:1)
我不确定你是如何生成Bitmap的,但如果你正在使用BitmapData类,请使用方便的generateFilterRect()函数,该函数将计算应用了传递过滤器的新边界。
这应该为您提供正确的尺寸,尤其是在使用扩展对象外观的BlurFilter或BevelFilter时。请看下方法描述的示例。
答案 1 :(得分:1)
当Bitmap
处于非整数x或y位置时,会发生这种情况。这似乎是源数据如何传递给过滤器的一个错误,我找不到一个好的解决方案来尝试不同的Bitmap
的{{1}}和pixelSnapping
属性。< / p>
您可以通过对其全局位置进行四舍五入来精确对齐图像(请参阅localToGlobal
和globalToLocal
,但如果它移动,可能更容易将smoothing
包裹在{{1}中使用稍大的透明背景,强制过滤器在边缘周围包含一个安全边距。像这样:
Bitmap
或者,您可以将源Sprite
绘制为稍大的副本以执行相同的操作。