我注意到尽管Canvas.drawBitmap()
采用了浮点坐标(至少有一些变体),但在blitting时它不执行任何子像素消除锯齿。也就是说,位图总是以精确的整数坐标绘制(在我的代码中我没有使用缩放,画布矩阵是标识,完成paint.setFilterBitmap(true)
)。
有人可以确认这个观察吗?如果不支持,是否有任何已知的计划包括抗锯齿blitting功能?
答案 0 :(得分:1)
根据Romain Guy的similar Google group question:
如果当前变换仅是转换,则位图(和其他基元)始终以像素对齐的方式绘制。任何其他变换都将执行子像素定位。
所以一个简单的解决方案是
Canvas.scale(1.00001f, 1.00001f);