Моя домашняя страница в настоящее время использует 5 веб-шрифтов - я бы хотел, чтобы они были 6 из-за пятнистой поддержки Helvetica Neue. Один из шрифтов - значки «FontAwesome», остальные 4 используются только для одного или двух слов (т.е. у меня есть заголовок «Оптимизация», написанный буквами, похожими на старый компьютер).
2 из этих шрифтов доступны через Google, и я запрашиваю только необходимые буквы (и это прекрасно работает). Однако остальные 2 взяты с openfontlibrary.org и доступны только в одном формате. Что не имеет большого значения (в любом случае они мне понадобятся надежно, так что локальные копии лучше), быстрый доступ к генератору Fontsquirrel.com @ font-face, и у меня есть их в нескольких форматах, и CSS для загрузки.
А потом я проверяю время загрузки моей страницы ... тьфу. Я предполагаю, что я смогу разместить свои локальные копии, у кого-нибудь есть опыт в этой области?
источник
Это буквальное утверждение?
Если да, то почему вы вообще не хотите встраивать эти шрифты, подмножества или нет? Вы не должны даже оптимизировать в этом случае, просто удаляя . Сделайте изображения нужного вам текста и используйте вашу любимую технику замены текста. Вы добавляете HTTP-запросы и время загрузки на свой сайт ради нескольких слов .
источник
Чтобы продолжить, я использовал расширенные опции генератора @ font-face для подстановки своих шрифтов, поэтому загружал только необходимые символы.
Один из вариантов заключался в том, чтобы Base64 кодировал шрифты (что позволило мне встроить их в мой файл CSS). Если память служит, то Base64 кодирует
.woff
и.ttf
шрифт.Хотя мне нравится поддерживать как можно больше пользователей из всех браузеров, я решил, что не стоит замедлять пользователей современных браузеров с дополнительными, вероятно, избыточными данными, поэтому я использовал Modernizr (который использует yep / nope.js) для асинхронно загружать отдельный
CSS
файл со ссылками на все форматы шрифтов в соответствии с усиленным пуленепробиваемым синтаксисом шрифтов .Я ходил взад и вперед между Base64, кодирующим
.woff
шрифт и включающим остальные объявления шрифта в первичномCSS
файле, или только включал Base64, закодированный.woff
в первичном файле,CSS
а затем включал другие форматы вCSS
файл, через который я загружал асинхронноModernizr.load
.Я предпочитаю быструю загрузку эстетике, поэтому FOUC не представляет большой проблемы, но я отмечу, что большинство браузеров как бы «моргали» шрифтами, когда они загружались (что было после того, как закодированные в Base64 шрифты в
CSS
загруженной) асинхронны.С другой стороны, как только шрифты были загружены и сохранены в кеше (заголовки long expires установлены на сервере), мигание было удалено, и я смог загрузить расширенные наборы шрифтов, чтобы пользователи, которые говорили на других языках (и использовали Виджет гугл переводчик, который был включен) все равно будет видеть стилизованный текст.
Так как это был мой собственный сайт, я смог поэкспериментировать, но я в основном делал это, чтобы «похвастаться», я более консервативен с клиентскими сайтами.
Другой метод, который я реализовал, заключался в том, чтобы поместить все
.svg
шрифты в один файл и идентифицировать каждый из них по своему собственному идентификатору, а не помещать каждый в отдельный файл, как генерирует генератор @ font-face.источник