Как нарисовать большой тонкий текст в Android - PullRequest
4 голосов
/ 28 января 2012

Мне нужно нарисовать один символ на моем виде в виде БОЛЬШОГО тонкого текста, как показано на рисунке ниже (текст в виде простых линий)

enter image description here

Но мой код ниже дает мне следующееimage (текст как форма)

    Paint dPaint = new Paint();
    dPaint.setAntiAlias(true);
    dPaint.setDither(true);
    dPaint.setColor(Color.RED);
    dPaint.setTextSize(getWidth()*.8F);
    dPaint.setStyle(Paint.Style.STROKE);
    dPaint.setStrokeWidth(1);
    canvas.drawText("A",getWidth()*.3F, getHeight()*.6F, dPaint);

enter image description here

Я пробовал различные свойства рисования и обводки, но ничего не получилось.Также я прочитал, что 2D текст в Java рисуется как фигура.

Есть ли способ рисовать текст (в частности, символ) в виде линий, а не фигуры.Также текст должен быть БОЛЬШОГО.

Ответы [ 2 ]

1 голос
/ 28 января 2012

Я думаю, что только два способа удовлетворить ваши требования.

Используйте пользовательский тип шрифта со своим стилем шрифта и используйте его в своем приложении, как показано ниже

    TextView text = (TextView) findViewById(R.id.textView);
    Typeface customFont = Typeface.createFromAsset(getAssets(), "ThinText.ttf");
    text.setTypeface(customFont);

Другой метод заключается в том, что вы должны нарисовать форму персонажа в виде линий, вычислив координаты, необходимые на пути для прорисовки этого алфавита или цифры.

Надеюсь, это поможет вам.

0 голосов
/ 28 января 2012

Вы увеличиваете strokewidth, затем тонкое увеличивается так:

dPaint.setStrokeWidth(5);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...