在用beginBitmapFill(bitmap:BitmapData, matrix:Matrix = null, repeat:Boolean = true, smooth:Boolean = false):void画图的时候,假定使用的matrix = null,则用drawRect(x:Number , y:Numbre , width:Number , height:Number)的时候x的值一定要为bitmap宽的整数倍,否则画出来的图会变形,首先我们来看一下beginBitmapFill函数中repeat参数的定义:
repeat :Boolean
(default = true
) — 如果为 true
,则位图图像按平铺模式重复。如果为 false
,位图图像不会重复,并且位图边缘将用于所有扩展出位图的填充区域。
例如,请考虑下列位图(20 x 20 像素的棋盘图案):
当 repeat
设置为 true
时(如下例所示),位图填充将重复位图:
repeat
设置为 false
时,位图填充将对位图外部的填充区域使用边缘像素:
当repeat参数值为true的时候,填充图会重复的从x=0的地方开始绘制,但是我们看到的是drawRect中x之前的部分被隐藏了,所以到x位置时,如果x不是bitmap的整数倍时,会看到不想见到的结果,所以使用drawRect的时候要使x为bitmap的整数倍,这样画出来的才是想要的图
(以上观点是自己总结,仅供参考)