текст на холсте выглядит ерундой в IE ... почему? - PullRequest
5 голосов
/ 02 июня 2011

Я недавно немного расширил симпатичный плагин диаграмм jquery "flot" ... цель - нарисовать то, что обычно находится в легенде, прямо на графике.

это выглядит просто чепухой, так как IE, кажется, делает шрифт довольно слабо.

см. Здесь, левая сторона - IE, правая сторона - Firefox:

выпуск http://i56.tinypic.com/34oq4ci.png

Кстати ... для рисования текста используется функция fillText ()

как я могу вывести IE в форму?

спасибо!

1 Ответ

3 голосов
/ 02 июня 2011

Печальный факт заключается в том, что на данный момент в Canvas существуют несоответствия шрифтов между всеми браузерами.То, что выглядит в Firefox по-другому, в IE будет выглядеть по-другому.То, что выглядит в Chrome по-другому, в Safari будет выглядеть по-другому (даже если они оба основаны на webkit)

Измените шрифт на «более безопасный» и посмотрите, что произойдет.Например:

ctx.font = "72pt verdana"
ctx.fillText("lalalala", 0, 72);

Должно отображаться одинаково как в IE9, так и в FF4.

Конечно, это не последнее.Если вы делаете такие вещи, как масштабирование и поворот ваших шрифтов, вы столкнетесь с еще более странными проблемами.Попробуйте это в Opera или в версии Chrome не для разработчиков: http://simonsarris.com/misc/scaleText.html

( снимок экрана этой проблемы )

Поэтому решение состоит в том, чтобы просто найти шрифт, которыйв конечном итоге вы увидите то же самое в браузерах, на которые хотите настроить таргетинг (методом проб и ошибок, начните со списка веб-безопасных шрифтов), и попытайтесь никогда не масштабировать и , чтобы повернуть холст перед вызовом fillText.Могут даже быть другие преобразования, которые вызывают странные эффекты в разных браузерах, поэтому вы должны попробовать свой шрифт в простом случае и посмотреть, действительно ли он выглядит по-другому.

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