Canvas drawTextOnPath и сохранить вид - PullRequest
0 голосов
/ 29 августа 2018

Когда я рисую текст на холсте, используя

//mTextPaint initialized while initialize the view.
mTextPaint = new TextPaint();
mTextPaint.setAntiAlias(true);
mTextPaint.setColor(color);

//iPath move/line to some point on onTouchEvent()
canvas.drawTextOnPath(text, iPath, 0, 0, mTextPaint);

enter image description here

Когда я сохраняю этот вид в формате JPEG,

try {
    fos = new FileOutputStream(fname);
    v.getDrawingCache().compress(Bitmap.CompressFormat.JPEG, 100, fos);
} catch (Exception ex) {
    Toast.makeText(this, "Error Saving Image",
            Toast.LENGTH_LONG).show();
}

Примечание: setDrawingCacheEnabled(true); добавлено при инициализации представления.
enter image description here

Любая идея о том, почему это происходит и как преодолеть эту проблему.

1 Ответ

0 голосов
/ 29 августа 2018

Проблема является шрифтом по умолчанию. И гарнитура по умолчанию - Typeface.SANS_SERIF.

Я изменил на Typeface.SERIF, используя следующий код и его работу.

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