Канвас не "выводит" текст, на нем печатают шрифтами, то есть переводят их в пикселы не на экране, а на картинке которая уже затем идет на экран. Никакого композинга в канвасе нет и даже сглаживания нет. Я полагаю вы печатаете на канвасе не сами, а через какую-то либу, которая возможно пытается там что-то компоновать. Так вот есть такое понятие в шрифтовой науке - хинтинг. Это привязка контура символа к пиксельной сетке. Значение которого повышается пропорционально уменьшению кегля шрифта (высоты).
Если штрих занимает 1 пиксель то сдвигом контура на 0.5 пикселя можно получить из болд - нормал, а из нормал - х нанэ. "Удачно" сдвинув по двум координатам можно добиться почти полного растворения символа в квантованном просранстве пикселей.
В общем это либо либа так рендерит, либо увеличивайте кегль.
Кстати, я как-то пытался оптимизировать веб-шрифты. Скажем мне нужны только два набора - кириллица и латинница. Скачал, открыл, выкосил лишнее, сгенерил - ок. Сконвертил в веб он-лайн - получил полное гавно. Все хинты слетели к чертям.
|