我希望在Android的画布上绘制无反锯齿的文本。我想使用的字体文件是cour.ttf,我已将其从PC的C:\windows\fonts目录复制到我的应用程序的资产目录中。
我正在使用以下代码:
paint.setColor(Color.BLACK);
paint.setTypeface(Typeface.createFromAsset(getAssets(),"cour.ttf"));
paint.setTextSize(20);
paint.setAntiAlias(false);
canvas.drawText("ABCDE abcde 12345 -+/#.",100,100,paint);
setAntiAlias函数似乎没有任何效果。 这张图片显示了我的结果: http://oi47.tinypic.com/35253wo.png 第一行是应用程序的屏幕截图,抗锯齿设置为false。 第二行是应用程序的屏幕截图,抗锯齿设置为true。 第三行是我期望得到的,它是使用相同字体在notepad.exe中制作的屏幕截图。
我做错了什么还是这是关闭抗锯齿的预期输出?我在这里想要实现的是像素化的未模糊文本。
非常感谢任何帮助。
编辑: 我还没有找到解决方案,但我发现了一些有趣的东西: 在我的Activity中添加
android:hardwareAccelerated="false"
可以清除它。显然,这在Android 4上默认开启。不过,还有一个(非常轻微的)阴影可见,我想要删除它。禁用硬件加速的截图: http://oi49.tinypic.com/aayypj.png
Paint
中将其设置为 false。 - Ron