Если бы все было определено с помощью CSS, вы когда-нибудь задумывались о том, чтобы создать свои собственные @font-face
определения, переопределяющие Helvetica?
Например, если все определено для рендеринга в Helvetica, как в этом выражении:
* {
font-family: Helvetica;
}
Затем вы можете добавить оператор @ font-face к вашей таблице стилей, который теперь будет выглядеть следующим образом:
@font-face {
font-family: 'Helvetica';
src: local('Anivers-Regular'),
local('Anivers Regular'),
url('typeface.Anivers.Regular.otf') format('truetype');
}
Работает и с элементами в виде строки, такими как <h4 style="font-family: Helvetica;">aw</h4>
.
Таким образом, все Helvetica будет автоматически визуализироваться в (например,) Anivers, и этот фрагмент работает с двойными кавычками или без них. Укажите имя PostScript, полное имя + стиль, затем URI для кросс-браузерной совместимости. Если запасной вариант на Helvetica, эта магия CSS будет работать. Кроме того, таким образом вы получаете бесплатное снижение производительности, поскольку браузер вместо вашего скрипта заменяет вас.
К сожалению, Internet Explorer ненавидит файлы .otf без видимой причины, и на всякий случай вам понадобится утилита ttf2eot.
-
Это ужасный хак, который слишком долго будет жить в вашем рабочем коде.
Кстати, каков сценарий и почему вы хотите это сделать - заменив более привлекательный шрифт более низким?
Если вы позже передумали и хотите использовать «настоящую» Helvetica где-то в другом месте, вам придётся швырнуть её под другим именем. Утомительная работа, не правда ли?