Согласно документации Apple, @font-face не рекомендуется использовать в iPhone-версии Safari. IPhone включает только 11 шрифтов, AFAIK, и, в любом случае, мне нужен хороший шрифт blackletter для приложения, которое я создаю. Я буду генерировать случайный текст, поэтому изображения не вариант. Какие у меня есть альтернативы? Я застрял с решением JavaScript, как Cufón?
@font-face устарел на iPhone версии Safari. Каковы мои альтернативы?
Ответ 1
Ну, только что узнал, что @font-face
поддерживает NOW на текущем iPhone и iPad. Документация, связанная выше, которая Справочник по CSS Safari Показывает пример того, как вставлять шрифт.
@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) [, ...];
}
Просто хотел убедиться, что кто-то еще, кто пришел и прочитал это, как я, знал текущее состояние.
Ответ 2
Фактически вы можете использовать @font-face. Вам просто нужно использовать шрифты SVG. Существуют утилиты для преобразования TTF в SVG.
См. это для получения дополнительной информации (не мой пост)
http://blog.themeforest.net/tutorials/how-to-achieve-cross-browser-font-face-support/
Ответ 3
Cufón - это единственное решение, которое вы сможете использовать из коробки. У этого есть дополнительное преимущество быть довольно быстрым на iPhone, поскольку он использует холст, а не встроенный SVG, и сгенерированные шрифты обычно на 60-80% меньше, чем исходные шрифты (при сжатии).
Ответ 4
Я буду генерировать случайный текст, поэтому изображения не являются опцией.
Вы можете использовать графическую библиотеку на сервере и нарисовать изображения "на лету". Я сделал что-то подобное, и он работает, но, конечно, это зависит от количества текста, который вы хотите нарисовать. Плюс, если текст повторяется, по крайней мере, иногда, вы можете кэшировать изображения.