使用Graphics中的drawRect画图遇到的问题

      在用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 像素的棋盘图案):

20 x 20 像素棋盘

repeat 设置为 true 时(如下例所示),位图填充将重复位图:

60 x 60 像素棋盘

repeat 设置为 false 时,位图填充将对位图外部的填充区域使用边缘像素:

60 x 60 像素图像,无重复



当repeat参数值为true的时候,填充图会重复的从x=0的地方开始绘制,但是我们看到的是drawRect中x之前的部分被隐藏了,所以到x位置时,如果x不是bitmap的整数倍时,会看到不想见到的结果,所以使用drawRect的时候要使x为bitmap的整数倍,这样画出来的才是想要的图

(以上观点是自己总结,仅供参考)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值