Android 4.2.1错误字符字距(间距)

前端之家收集整理的这篇文章主要介绍了Android 4.2.1错误字符字距(间距)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当使用Canvas和drawText()方法时,我在 Android 4.2.1上看到不同的渲染. @H_502_2@4.2以下:

@H_502_2@对于Android 4.2.1(Nexux 7)我得到:

@H_502_2@正如您可以看到的文字消费非常紧张.似乎是在4.2.1中引入的字距问题.用于绘制文本的油漆没有什么特别之处:

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);
@H_502_2@如果我不使用titlePaint.setLinearText(true),我会在4.2.1中得到一个奇怪的结果,你可以看到:

@H_502_2@Android 4.2 on Nexus 7: canvas.drawText() not working correctly

@H_502_2@编辑:

@H_502_2@这个奇怪的行为已经向Android团队报告:http://code.google.com/p/android/issues/detail?id=39755,但它仍然不是一个“官方”问题.

@H_502_2@编辑(2):

@H_502_2@有些传言称这个问题是一个textSize< 1.0F ...

解决方法

解决方法,我正在使用:
scalePaint.setTextSize(1.5f);
@H_502_2@那么,在onDraw方法中:

canvas.save();
canvas.scale(0.01f,0.01f);
canvas.drawText(""+i,0.5f*100,0.8f*100,scalePaint);                  
canvas.restore();
@H_502_2@正如你所看到的,我正在重新调整文本的位置,所以它应该在那里.

原文链接:https://www.f2er.com/android/312443.html

猜你在找的Android相关文章