我们发现当我们使用draw将一个bitmapdata绘制到另一个bitmapdata时,缩放变换有一个上限。在某些时候,IBitmapDrawable参数不再在目标位图上呈现。
有谁知道这个上限的参数是什么?这是在某处记录的吗?
答案 0 :(得分:1)
答案 1 :(得分:1)
注意:在flash 10中,该限制已被删除
答案 2 :(得分:1)
实际上这个主题非常棘手......有一些记录在案的限制,但在不同场景和Flash Player版本中存在许多不同的未记录限制...例如,查看这篇文章及其评论: http://www.bit-101.com/blog/?p=2067
如果你允许我自己引用^^
我有同样的问题,我想 这不是真正的平局() 限制,但一个DisplayObject ... 例如:
var bmp=new BitmapData(8000,100,false,0); var bmp2=new BitmapData(8000,10,false,0xFF0000); bmp.draw(bmp2);
完美地工作......与其他人一样 fillRect和applyFilter等方法。 但是,如果你尝试绘制()它会失败 任何超过4079像素的DisplayObject 水平,或垂直4082 (根据getColorBoundsRect)。
此外,SO中有几个类似问题的主题: maximum size of a sprite in as3?
答案 3 :(得分:1)
虽然BitmapData在constructed(f9中为2880x2880,f10中为16,775,168个总像素区域)时具有其大小的上限,但我们发现在转换bitmapData并仅绘制其中的一部分时会应用稍微不同的约束
如果你的bitmapData的大小是1x1px,你可以将它缩放到最大值8191x8191px(比你可以在f10中构造的BitmapData大得多)并将位图绘制到另一个位图中。如果您将位图缩放到大于该位图,则它将不会显示。