#FontFaceAPI
FontFace API は、フォントの読み込みを制御するために使用されます。
この API は、フォント オブジェクトを返すコンストラクター FontFace() を提供します。
新しい FontFace(ファミリー、ソース、記述子)
FontFace() コンストラクターは 3 つのパラメーターを受け取ります。
family: フォント名を表す文字列。CSS の@font-faceのfont-family属性と同じように記述されます。source: フォント ファイルの URL (CSSurl()メソッドを含む必要があります)、またはフォントの ArrayBuffer オブジェクト。descriptors: フォント ファイルをカスタマイズするために使用されるオブジェクト。このパラメータはオプションです。
var fontFace = 新しい FontFace(
「ロボット」、
「url(https://fonts.example.com/roboto.woff2)」
);
fontFace.family // "ロボト"
FontFace() は、フォント情報を含むフォント オブジェクトを返します。この時点ではフォント ファイルの読み込みが開始されていないことに注意してください。
フォント オブジェクトには次のプロパティが含まれます。
FontFace.family: フォントの名前を示す文字列。CSS のfont-familyプロパティに相当します。FontFace.display: 読み込み中にフォントを表示する方法を指定する文字列。CSS のfont-displayプロパティに相当します。可能な値は 5 つあります:auto(ブラウザによって決定される)、block(フォントの読み込み中、コンテンツは最初の 3 秒間表示されず、その後は読み込みが終了するまでフォールバック フォントが表示されます)は完了していません)、fallback(最初の 100 ミリ秒はコンテンツを表示できません。次の 3 秒でフォールバック フォントが表示され、その後フォントの読み込みが完了していない限りフォールバック フォントが表示されます) 、optional(最初の 100 ミリ秒はコンテンツは表示されません。その後、フォントがロードされていない限り、ロードが完了すると、フォールバック フォントが常に表示されます)、swap(フォントがロードされていないため、フォールバック フォントが常に表示されます)。FontFace.style: CSS のfont-styleプロパティに相当する文字列。FontFace.weight: CSS のfont-weightプロパティに相当する文字列。FontFace.stretch: CSS のfont-stretchプロパティに相当する文字列。FontFace.unicodeRange: 文字列。descriptorsオブジェクト内の同じ名前のプロパティに相当します。FontFace.variant: 文字列。descriptorsオブジェクト内の同じ名前のプロパティに相当します。FontFace.featureSettings: 文字列。descriptorsオブジェクト内の同じ名前のプロパティに相当します。FontFace.status: フォントの読み込みステータスを示す文字列。4 つの値が考えられます:unloaded、loading、loaded、error。このプロパティは読み取り専用です。FontFace.loaded: Promise オブジェクトを返します。フォントの読み込みが成功または失敗すると、Promise の状態が変化します。このプロパティは読み取り専用です。
フォント オブジェクトのメソッドは FontFace.load() だけで、実際にフォントの読み込みを開始します。フォントの読み込み結果によって状態が決定される Promise オブジェクトを返します。
var f = new FontFace('test', 'url(x)');
f.load().then(function() {
//Web ページはこのフォントの使用を開始できます
});
作者: wangdoc
アドレス: https://wangdoc.com/
ライセンス: クリエイティブ・コモンズ 3.0