酒井優(@glatyou)
Webフォントの利用は広がってきている
Webデザイナーやフロントエンドの人も
実際に使うことが増えてきているはず
Webフォントには短いながら歴史もあり
実装方法や利用のされ方の
ベストプラクティスも変化している
時代とともに変わってきたWebフォントと
その実装方法や使い方を解説する
Webフォントとして使われるフォントにはいくつかのファイル形式がある
正式名称 | TrueType Font |
---|---|
開発元 | Apple、Microsoft |
特徴 | デバイスフォントとして 使われるポピュラーな形式 |
正式名称 | OpenType Font |
---|---|
開発元 | Adobe、Microsoft (Appleも賛同) |
特徴 | TTFの拡張 フォントの機能が追加 (CSSのfont-feature-settingsなどに相当) |
正式名称 | Embedded OpenType |
---|---|
開発元 | Microsoft |
特徴 | IE4から採用されている W3Cからは不採用 |
正式名称 | Web Open Font Format |
---|---|
開発元 | Opera、Microsoft、Mozilla |
特徴 | 圧縮され軽量 ライセンス等のメタ情報を持つ モダンブラウザはほぼ対応 (IEは10、Androidは4.4から) |
Blcks.ttf | 3KB |
---|---|
Blcks.eof | 3KB |
Blcks.woff | 2KB |
Blcks.svg | 10KB |
今後WebフォントはWOFFに
置き換わっていく(はず)
通常のフォントを入手し
ツールで変換する
気に入ったのにライセンス的に
Webフォント化できない、いいのがない
そんなときは自作して
しまうというのもアリ
Webサービス「Glyphter」を用いて自作の
フォントの各ファイル形式を用意する
Glyphter: The SVG Font Machine - http://glyphter.com/
ABCDEFG
HIJKLMN
OPQRSTU
VWXYZ
Webフォントを使用する2つの方法
フォント名やフォントの定義に対応する
フォントファイルを指定する@ルール
font-family | フォント名を定義 |
---|---|
src | 対応するリソースを指定 |
各スタイル | 対応する各スタイルを定義(font-weight、font-feature-settingsなど) |
unicode-range | 適用されるグリフの種類を限定 |
@font-face {
font-family: Blcks ;
src: local(Blcks),
url(Blcks.woff) ;
font-weight: bold ;
unicode-range: U+0040-0060 ;
}
ここで言うfont-familyは
自由につけ、変数のように使える
@font-face {
font-family: Japanese text ;
src: url(../blcks/NotoSansJP-Regular.otf),
local(Meiryo);
}
.slides li{
font-family: "Lato", "Japanese text", sans-serif;
}
フォントファイルの指定の際、
さまざまなブラウザーで
問題なく表示される指定のしかた
@font-face { font-family: 'MyFontFamily'; src: url('myfont-webfont.eot?#iefix') format('embedded-opentype'), url('myfont-webfont.woff') format('woff'), url('myfont-webfont.ttf') format('truetype'), url('myfont-webfont.svg#svgFontName') format('svg'); }
その後さまざまな環境の変化を
踏まえて改良が重ねられてきている
@font-face { font-family: 'MyWebFont'; src: url('myfont.woff') format('woff'), /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */ url('myfont.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5, Opera 10+, Safari 3—5 */ }
自作フォント「BLCKS」の表示
@font-face {
font-family: Blcks ;
src: url("../blcks/Blcks.woff") format("woff"),
url("Blcks.ttf") format("truetype") ;
}
.slides .blcks {
font-family: Blcks ;
}
link要素やscript要素で直接埋め込む
BracketsとEdge Web Fonts
手軽に使うなら
Brackets & Edge Web Fonts
フォントの新たな使い道として
アイコンフォントがある
Webフォントはアイコンとしての
利用にマッチしている
古くからあるフォント形式の
アイコンリソース
Webフォントとして利用する
ために作られたDingbatsの一種
ただし、残念ながら
セマンティックではない
リガチャ機能を応用した
アイコンフォント
特に表示領域の狭い
モバイル環境などでオススメ
Ligature Symbolsを用いた作例
Ligature Symbol Font Demo - CodePen
パフォーマンスやデザインの問題を
フロントエンド技術が解決する
マルチプラットフォーム&マルチデバイス
環境にWebフォントを
より早く、より美しいWebサイトのために
ご清聴ありがとうございました