Вам попался капризный заказчик, требующий «расписные» шрифты? Или вы просто создаете стильный тематический сайт, и кастомное написание текста подчеркнет вашу авторскую идею? Рассмотрим один из способов решения данной задачи.
Когда бывает нужно
Для начала рассмотрим наиболее оправданные случаи, в которых Вам могут понадобиться нестандартные шрифты.
- Стильное меню.
- Стильные заголовки.
- Логотип. Создание логотипа — дело серьезное, много книг по этому поводу написано, долго специалисты этому делу обучаются… И автор не станет отбирать у людей их хлеб, но вставит свои пять копеек. Если ваш логотип представляет собой текст, то в целях качественной SEO оптимизации выводить его следует как ТЕКСТ.
Задача заключается в использовании нестандартных шрифтов, то есть таких, которые со значительной долей вероятности отсутствуют у пользователя вашего интернет-ресурса.
Пути решения
Как и в большинстве случаев, любое задание имеет несколько путей решения, и наше — не исключение. Поехали:
- Картинка. Отсутствует гибкость настройки, ухудшается скорость загрузки страниц, увеличивается нагрузка на сервер, SEO вообще не при делах.
- Flash. Дополнительные файлы для загрузки, нужны навыки работы в Flash-эдиторах (параметры текста менять тоже здесь), средняя SEO.
- JS. Дополнительные внешние файлы (и все, что из этого вытекает), средняя SEO, текст невозможно скопировать.
- Нестандартные font-ы средствами CSS
Истинный путь самурая, или "да здравствует CSS"
В решении поставленной задачи нам поможет css правило @font-face, которое позволяет подгружать к документу специфические шрифты и определить их настройки.
CSS:
@font-face { font-family: AlexBrush-Regular; src: local("AlexBrush-Regular"), url("./AlexBrush-Regular. otf "); }
Таким образом мы исключаем необходимость наличия выбранного нами шрифта в ОС посетителя.
Конструкция такого вида позволяет подключить TrueType (ttf) и OpenType (otf) шрифты.
Интересно: OpenType обладает бо́льшими по сравнению с TrueType возможностями предпечатной подготовки и поддерживает бо́льший набор символов при меньшем размере файла.
Казалось бы, на этом тему можно было и закрыть, но есть одно НО… Вспомним о наших «особенных» друзьях, а именно о браузерах семейства IE. Для внедрения нестандартного шрифта в IE шрифт должен быть в Embedded OpenType (eot) формате.
Это мало не единственный случай, когда особенность IE приносит больше пользы, чем вреда. Дело в том, что eot формат подразумевает:
- Шифрование. В файл заносятся данные об адресе проекта, так что украсть шрифт и залить себе на сайт у злоумышленников не получится.
- Компрессию. Файл шрифта сжимается, тем самым уменьшаются временные затраты на загрузку.
Приняв к сведению выше сказанное, модифицируем наш пример:
CSS:
@font-face { font-family: AlexBrush-Regular; src: local("AlexBrush-Regular "), url(./ AlexBrush-Regular.eot); } @font-face { font-family: AlexBrush-Regular; src: local("AlexBrush-Regular"), url("./AlexBrush-Regular. otf "); }
Опыт практического применения показал необходимость усовершенствования данного примера для фикса багов и улучшения распознавания обозревателями.
CSS:
@font-face { font-family: " AlexBrush-Regular "; src: url("AlexBrush-Regular.eot"); src: url("AlexBrush-Regular.eot?#iefix") format("embedded-opentype"), url("AlexBrush-Regular.svg#JournalRegular") format("svg"); url("AlexBrush-Regular.woff") format("woff"), url("AlexBrush-Regular.otf ") format("truetype"), }
Важно!!!
- Гибкость. Настройка и изменение параметров текста не составляет труда.
- Скорость. Минимальное число дополнительных файлов для загрузки, не тормозит страницу как такое же количество элементов на js и Flash.
- SEO. Текст остался текстом — плюсы очевидны.
- Пример работоспособен в браузерах начиная с: IE4, Op, Fx3.5, Cr2, Sa1.
- Перед применением шрифта нужно провести его оптимизацию (читайте послесловие).
- При использовании покупных шрифтов нужно побеспокоится об их безопасности.
- Если пропускная способность канала связи маленькая, то пока не подгрузится файл шрифта, пользователь либо увидит простой шрифт на месте нестандартного, либо не увидит ничего в принципе.
Послесловие.
Оптимизация шрифта
При создании набора символов, разработчики стараются зарядить в него максимум функционала, для того чтобы как можно шире охватить целевую аудиторию. Исходя из этого, они вводят буквы, числа, знаки пунктуации, дополнительные значки, разные виды начертания, целый ряд значений font-weight и т. д.
В результате таких стараний файлы шрифтов могут перевалить за отметку десятков мб. А нужно ли нам такое разнообразие? Ведь для придания пикантного стилевого оттенка, нам (в зависимости от ситуации) не обязательно нужны знаки препинания, разнообразные символы. По правде говоря, и разные начертания не всегда нужны. Или допустим, вы оптимизируете свой сайт строго под рунет, без латыни можно обойтись…
Ну, суть Вы уже уловили. Шрифт нужно оптимизировать:
- Убираем все содержимое, которое не пригодится в решении практической задачи.
- Конвертируем файлы в необходимые форматы.
Как это сделать? На просторах интернета существует целый ряд сервисов, позволяющих выполнить необходимые операции, например: font-face Generator, Online Font Converter, Web Font Optimizer и др.
Защита
На разработку качественного функционального шрифта уходит немало времени, и поэтому такой шрифт стоит неплохой суммы денег. Все покупные (легально) шрифты являются зарегистрированными и представляют собой интеллектуально-промышленную собственность.
При приобретении шрифта Вы получаете право применять его в вэб, но если шрифт с Вашего ресурса выкачает злоумышленник, то ответственность за причинённый разработчику вред понесёт хозяин сайта. Как защитить свой font?
В IE все продумано до нас — защита в формате eot уже встроена. Для всех остальных обозревателей однозначного решения пока нет.
Существуют, конечно, новые разработки — например, формат WOFT, в котором вопрос защиты снимается аналогично eot, но к сожалению, он пока не может похвастаться полной поддержкой в браузерах.
Также вы можете просто применить бесплатные шрифты.