Позвольте мне сократить эту мысль коротко: это не так, как работают ttf
(или на самом деле любые) шрифты. Жирным шрифтом, курсивом и т. Д. Являются отдельные «физические» файлы на вашем жестком диске, а вид стиля, который вы видите в приложениях Office, текстовых редакторах и т. Д., Поступает из ОС, показывая вам абстракцию: он отображает только имя семейства шрифтов, а не список отдельных файлов ttf
или otf
, а затем отображает элементы управления стилем/весом, которые запускают фактический переключатель ресурса шрифта из одного файла в другой, даже если вы не заметили.
Итак: если у вас есть файл ttf
, этот файл представляет собой только одно конкретное выражение лица шрифта (регулярное, полужирное, курсивное, полужирное, или даже более подробное на основе свойств метаданных OpenType).
Чтобы сделать вещи еще более увлекательными: если вы хотите использовать шрифты в CSS, CSS даже не заботит о том, что такое конкретный ресурс шрифта. Он полностью полагается на вас, чтобы сказать, что это такое, и вы можете лгать: CSS поверит вам. Если вы используете @font-face
правило, которое вы получите сказать, какой файл шрифта, чтобы использовать для конкретной комбинации font-*
свойств, так что вы находитесь в водительском сиденье:
@font-face {
font-family: MyFont;
/* CSS has no idea, nor does it care, what this font "really" is */
src: url('myfont-Bold-Italic.ttf') format("truetype");
/* so we tell it this font is applicable to weight:100, or ultra-thin */
font-weight: 100;
/* and we also tell it that this font is applicable in "normal" style */
font-style: normal;
}
И вуаля, насколько страницы стиль вы просто с использованием MyFont
с обычным стилем и весом 100 будет загружать все, что вам нужно было использовать, ttf
. Механизм CSS не заботится и даже не знает, что ресурс, который вы ему сказали, на самом деле является жирным курсивом выражения семейства шрифтов.Все это знают, что вы сказали, этот шрифт должен быть использован для weight:100/style:normal
так это то, что он собирается использовать в чем-то вроде этого:
body {
font-family: MyFont, sans-serif /* weight mismatch, so this will probably fall through */
}
h1 {
weight: 100; /* weight/style match: this will use myfont-Bold-Italic.ttf! */
}
если вы на окнах вы можете просмотреть шрифт установить, щелкнув правой кнопкой мыши и открытым - обычно, хотя у вас будет другой ttf для каждого типа символов. – Pete
Я почти уверен, что ttf имеет только один вес и что добавление font-weight: жирный или другие типы стилей просто подделывает эффект. Если вы хотите использовать функции истинного типа, вам нужно использовать один из форматов открытого типа, например, Google. –