有没有办法以视觉上令人愉悦的方式呈现自定义字体的文本(虽然我想系统字体可能不会有太大区别)?
我使用一个已分配自定义字体的画笔在画布上呈现文本。
我找到的唯一与抗锯齿相关的命令是“paint.setAntiAlias”。但文本仍然看起来很糟糕,几乎和Photoshop中没有抗锯齿一样糟糕。
那么...有没有办法做到这一点?
另外... 由于这是为游戏而设计的,位图字体是一个常见的替代方案,但由于我想要正确的字母间距,我必须编写一个相当复杂的位图字体类来实现。因为我没有找到一个已经存在的位图字体类。只有libgdx似乎包含一个。但那个与库紧密集成,需要进行大量修改。所以如果这里有人知道一个不需要那样做的字体类,那也将是很有帮助的。
我的代码片段作为参考,尽管它非常基本且完美地工作,但我不认为它很重要:
我使用一个已分配自定义字体的画笔在画布上呈现文本。
我找到的唯一与抗锯齿相关的命令是“paint.setAntiAlias”。但文本仍然看起来很糟糕,几乎和Photoshop中没有抗锯齿一样糟糕。
那么...有没有办法做到这一点?
另外... 由于这是为游戏而设计的,位图字体是一个常见的替代方案,但由于我想要正确的字母间距,我必须编写一个相当复杂的位图字体类来实现。因为我没有找到一个已经存在的位图字体类。只有libgdx似乎包含一个。但那个与库紧密集成,需要进行大量修改。所以如果这里有人知道一个不需要那样做的字体类,那也将是很有帮助的。
我的代码片段作为参考,尽管它非常基本且完美地工作,但我不认为它很重要:
textPaint = new Paint();
textPaint.setTextSize(size);
textPaint.setAntiAlias(true);
textPaint.setARGB(0xff, 0xff, 0xff, 0xff);
textPaint.setTypeface(Typeface.createFromAsset(pView.getContext().getAssets(),
"fonts/cordia.ttf"));
...
canvas.drawText(text, (int)(dimension / 2 - textwidth / 2),
(int)(dimension / 2 - size / 2), textPaint);