#android #text #2d #android-canvas
#Android #текст #2d #android-canvas
Вопрос:
Для эксперимента я хочу нарисовать пиксельный текст на холсте.
Это то, что у меня есть на данный момент:
Paint text = new Paint();
text.setAntiAlias(false);
text.setFilterBitmap(false);
text.setDither(false);
text.setFakeBoldText(false);
text.setLinearText(false);
text.setTextSize(10);
// Scale the canvas we draw on
matrix = c.getMatrix();
matrix.reset();
matrix.postTranslate(0, 0);
matrix.postScale(10,10);
c.setMatrix(matrix);
c.drawText("ABCabc", 0, 10, text);
Это позволяет достичь нужного мне размера, но текст сглажен и размыт, а это не то, что я хочу.
Самое близкое, что я получил, — это сделать это:
text.setTextScaleX(5);
который масштабирует текст так, как я хочу по горизонтали, но, к сожалению, нет text.setTextScaleY-функции…
Есть идеи?
Ответ №1:
Можете ли вы использовать text.setTextSize (n) и вместо этого увеличить шрифт?
Ответ №2:
Я знаю, что это действительно старый вопрос, но вот простое решение, если кто-то все еще ищет его:
textView.setTextScaleX(scaleX);
textView.setScaleY(scaleY);
Таким образом, разрешив scaleX == scaleY
, шрифт будет масштабироваться равномерно, как и ожидалось.