Canvas.drawImage 方法截取图片部分区域,无法填充整个显示区域
发布于 6 年前 作者 jie81 6191 次浏览 来自 问答
  • drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight) 从 1.9.0 起支持

Canvas.drawImage 方法截取图片部分区域,无法填充整个显示区域。

举个例子:

一张720 * 350 的图片,我只需要截取 坐标 sx, sy, sWidth, sHeight =  (0,0,100,100) 区域的图片,然后绘制到Canvas里面,在IOS中,截取的图片,可以填充整个设定的Canvas区域( dx, dy, dWidth, dHeight ),但是在Android中并没办法填充,截取的图片多少,则只显示多少。

3 回复

遇到同样的问题,但只有个别图片会这样,比如下面这张:

裁剪中间的正方形区域,并画到画布上时就会出现这个问题。

同遇到这个问题,希望官方赶快修复这个问题,Android sdk的drawimage有bug

忘了补充一下,这个方法

canvas.drawImage(sx, sy, sWidth, sHeight, dx, dy, dWidth, dHeight)的使用,是在download网络图片,并保存为本地图片后才会出现,如果是直接加载images目录下的图片,是不会出现的。
现在就是想处理网络图片裁剪问题;

回到顶部