Согласно документации Apple, @ font-face устарел для использования в версии Safari для iPhone. IPhone включает только 11 шрифтов, насколько я знаю, и, в любом случае, мне нужен хороший черный шрифт шрифт для приложения, которое я создаю. Я буду генерировать случайный текст, поэтому изображения не подходят. Какие у меня есть альтернативы? Я застрял с решением JavaScript, таким как Cufón?
@font-face устарел в версии Safari для iPhone. Каковы мои альтернативы?
Ответы (4)
Что ж, только что узнал, что @font-face СЕЙЧАС поддерживается на текущих iPhone и iPad. Документация, указанная выше, а именно Safari CSS Ссылка Показывает пример внедрения шрифта.
@font-face {
font-family: "MyFamilyname", cursive [, ...];
font-style: normal [, ...];
font-variant: normal[, ...];
font-weight: bold[, ...];
font-stretch: condensed[, ...]; /* Not supported */
font-size: 12pt;[, ...] /* Not supported */
src: local("Font Family Name"),
url(http://..../fontfile.ttf) format("truetype"),
url(http://..../fontfile.ttf) [, ...];
}
Просто хотел убедиться, что кто-то еще, кто придет и прочитает это, как я, знает текущее состояние.
На самом деле вы можете использовать @font-face. Вам просто нужно использовать шрифты SVG. Существуют утилиты для преобразования TTF в SVG.
Смотрите это для получения дополнительной информации (не мой пост)
http://blog.themeforest.net/tutorials/how-to-achieve-cross-browser-font-face-support/
Cufón — действительно единственное решение, которое вы сможете использовать «из коробки». Дополнительным преимуществом является то, что он довольно быстр на iPhone, поскольку использует холст, а не встроенный SVG, а сгенерированные шрифты обычно примерно на 60-80% меньше исходных шрифтов (при сжатии).
Я буду генерировать случайный текст, поэтому изображения не подходят.
Вы можете использовать графическую библиотеку на сервере и рисовать изображения на лету. Я сделал что-то подобное, и это работает, но, конечно, это зависит от объема текста, который вы хотите нарисовать. Кроме того, если текст хотя бы иногда повторяется, вы можете кэшировать изображения.