Как нарисовать крупногабаритный текст на холсте?

Я хочу нарисовать на холсте текст месяца вертикально по высоте экрана.

Paint init:

   this.paint = new Paint();
   this.paint.setAntiAlias(true);
   this.paint.setDither(true);
   this.paint.setSubpixelText(true);
   this.paint.setColor(color_text_dark);
   this.paint.setTextAlign(Align.RIGHT);

Рисунок:

   // Set the scale to the widest month
   float scale = getHeight() / this.max_month_width;
   String month_string = FULL_MONTH_NAME_FORMATTER.
                         format(active_month_calendar.getTime());
   canvas.save();
   canvas.translate(getWidth(), 0);
   canvas.rotate(-90);
   canvas.scale(scale, scale);
   c,anvas.drawText(month_string, 0, 0, this.paint);
   canvas.restore();

Результат выглядит хорошо наИПЧР экран, но очень уродливый и неровный наxhdpi один.

Я провел больше тестов на разных устройствах и понял, какой результат зависит от версии Android, а не от плотности экрана и разрешения.

Код отлично работает на платформе 2.x, но не работает на 4.0.3+. Предположим, реализация Android Draw здесь была изменена. Полный код вы можете увидетьВот.

ИПЧР версия2.3.5 (также проверено2,2)

xhdpi версия4,2 (также проверено4,1, 4.0.3)

Пробуя различные варианты сглаживания, субпиксельный текст не действует. Как я могу исправить эту проблему?

Ответы на вопрос(2)

Ваш ответ на вопрос