使用Canvas
和drawText()
方法时,我在Android 4.2.1上看到了不同的渲染。
低于4.2版本:
在Android 4.2.1(Nexus 7)上,我得到了:
如您所见,文本消费非常紧密。似乎是4.2.1引入的字距问题。用于绘制文本的Paint并没有什么特别之处:
titlePaint = new Paint();
titlePaint.setAntiAlias(true);
titlePaint.setColor(0xffffffff);
titlePaint.setTextSize(0.125f);
titlePaint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
titlePaint.setTextAlign(Align.CENTER);
titlePaint.setLinearText(true);
如果我不使用titlePaint.setLinearText(true)
在4.2.1上会得到奇怪的结果,您可以在这里看到:Android 4.2 on Nexus 7: canvas.drawText() not working correctly
编辑:这种奇怪的行为已经报告给了Android团队:http://code.google.com/p/android/issues/detail?id=39755但它还不是一个“official”问题。编辑(2):一些谣言声称这个问题是由于textSize < 1.0f引起的...