Android部分反别名

时间:2011-01-05 11:32:01

标签: android bitmap android-canvas draw antialiasing

我正在编写一个在谷歌地图中显示大块位图的应用程序。服务器发送我绘制到缩放/翻译画布的位图。我希望这个位图能够被消除锯齿,但如果我在画布上启用了抗锯齿,则位图的边缘会与背景混合(无/黑色)并在切片之间产生难看的暗线。 有没有办法告诉Android不要在绘图时对位图的边缘进行抗锯齿?或者该问题存在哪些其他方面?

2 个答案:

答案 0 :(得分:1)

您不在画布上启用消除锯齿,您在Canvas.drawBitmap()提供的Paint对象上启用它。因此,我认为,这里的解决方案是使用两个不同的Paint对象,第一个使用AA关闭来绘制位图,第二个使用AA来绘制其他所有内容。

您可能仍然有兴趣使用Paint.setDither()或Paint.setFilterBitmap()来影响位图的绘制方式。

答案 1 :(得分:0)

让我自己回答这个问题:我感到困惑,因为我认为抗锯齿是我需要的功能。实际上,在Paint-object上将antialias设置为false并将bitmapfiltering设置为true可以解决问题。 Antialiaising设置为true使得瓷砖之间的线条变得丑陋。 谢谢!