Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Webフォントことはじめ。Getting started with web fonts.
Search
Takafumi Omuro
July 26, 2018
Technology
0
110
Webフォントことはじめ。Getting started with web fonts.
Takafumi Omuro
July 26, 2018
Tweet
Share
More Decks by Takafumi Omuro
See All by Takafumi Omuro
生成AIで生産性向上
tomuro
0
430
Cloudflare Workers の実行時間が遅くなることがある
tomuro
0
13
生成AI使ってますか? 〜Amazon Bedrockで試してみよう〜
tomuro
2
300
Morisawa Fonts 新プランでのStripe導入事例
tomuro
0
120
Cloudflareを活用したWebフォントサービスの概要
tomuro
0
250
Stripeでサブスクリプションに割引を適用したときの注意点
tomuro
0
330
クラウドを利用したサブスクリプションサービスに向けて内製化開発に切り替えた話
tomuro
2
550
SESからSendGridに変更したけど移行で問題が出た話
tomuro
1
2.1k
なぜ老舗企業がOktaでDXを実現できたのか?
tomuro
1
580
Other Decks in Technology
See All in Technology
Абьюзим random_bytes(). Фёдор Кулаков, разработчик Lamoda Tech
lamodatech
0
300
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
3
1.6k
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
180
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
240
25分で解説する「最小権限の原則」を実現するための AWS「ポリシー」大全
opelab
9
2.2k
CSS、JSをHTMLテンプレートにまとめるフロントエンド戦略
d120145
0
230
原則から考える保守しやすいComposable関数設計
moriatsushi
3
510
生成AIでwebアプリケーションを作ってみた
tajimon
2
130
AIエージェント最前線! Amazon Bedrock、Amazon Q、そしてMCPを使いこなそう
minorun365
PRO
11
4.2k
PHP開発者のためのSOLID原則再入門 #phpcon / PHP Conference Japan 2025
shogogg
2
420
PostgreSQL 18 cancel request key長の変更とRailsへの関連
yahonda
0
110
データプラットフォーム技術におけるメダリオンアーキテクチャという考え方/DataPlatformWithMedallionArchitecture
smdmts
5
570
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Navigating Team Friction
lara
187
15k
Designing for humans not robots
tammielis
253
25k
Raft: Consensus for Rubyists
vanstee
140
7k
Six Lessons from altMBA
skipperchong
28
3.8k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
GraphQLとの向き合い方2022年版
quramy
46
14k
Statistics for Hackers
jakevdp
799
220k
Scaling GitHub
holman
459
140k
GitHub's CSS Performance
jonrohan
1031
460k
Docker and Python
trallard
44
3.4k
Transcript
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ͜ͱ͡Ί .JY-FBQ4UVEZ גࣜձࣾϞϦαϫখࣨو࢙
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ࣗݾհ w ໊લɿখࣨو࢙ʢΦϜϩλΧϑϛʣɹɹɹ w ॴଐɿגࣜձࣾϞϦαϫ ɹɹɹΤϯλϓϥΠζࣄۀ෦։ൃ෦ ɹɹɹΫϥυϑΥϯτγεςϜ՝ w झຯɿόΠΫʢ:;'3ॴ༗ʣ
ɹɹɹ57ήʔϜʢϞϯϋϯɺεϓϥτΡʔϯʣ w ͖ͳॻମɿϑΥʔΫ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ΞδΣϯμ w 8FCϑΥϯτͱʁ w 8FCϑΥϯτͷ͍ํ w ϑΥϯτඳըλΠϜϥΠϯ w ຊޠϑΥϯτͷ
w 8FCϑΥϯτ࠷దԽ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ࠓͷΰʔϧ w ΰʔϧ w 8FCϑΥϯτΛ͑ΔΑ͏ʹͳΔ͜ͱ w ϑΥʔΫΛݟ͚ΕΔΑ͏ʹͳΔ͜ͱ w ͢͜ͱ
w 8FCϑΥϯτͷ͍ํʹ͍ͭͯ w ͞ͳ͍͜ͱ w 8FCϑΥϯτબఆͳͲͷσβΠϯʹ͍ͭͯ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͱʁ w ϝϦοτ w ࣗ༝ͷߴ͍8FCσβΠϯ w ΞΫηεϏϦςΟͷ্ w σϝϦοτ
w ϑΥϯτϑΝΠϧͷμϯϩʔυʹґΔԆදࣔ w ຊޠͳͲจࣈछͷଟ͍ϑΥϯτͰ༰ྔ͕େ͖͍
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͱʁ IUUQTXXXPODIPTIPLVKQ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͱʁ IUUQTXXXDJUZTIJCVZBUPLZPKQ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͷ͍ํ w $44A!GPOUGBDFA @font-face { font-family: "MyFont"; src: url("fonts/MyFont.woff");
} w $44AGPOUGBNJMZA body { font-family: "MyFont"; } ˡϑΥϯτ໊ʢԿͰ͍͍ʣ ˡϑΥϯτͷॴ ˡ!GPOUGBDFͰࢦఆͨ͠ϑΥϯτ໊
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͷ͍ํ w $44A!GPOUGBDFA @font-face { font-family: "MyFont"; src: url("fonts/MyFont.woff")
format("woff"), url("fonts/MyFont.ttf") format(“ttf"); } w $44AGPOUGBNJMZA body { font-family: "MyFont"; } ˣTSDϑΥʔϧόοΫͰ͖·͢ ˢϨΨγʔϒϥβ͚ʹ ɹෳॻ͍ͨΓͰ͖·͢
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͷ͍ํ w $44A!GPOUGBDFA @font-face { font-family: "MyFont"; src: url("fonts/MyFont.woff")
format("woff"), url(“fonts/MyFont.ttf") format(“ttf"); } w $44AGPOUGBNJMZA body { font-family: "MyFont", serif; } ˣGPOUGBNJMZϑΥʔϧόοΫͰ͖·͢
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτͷ͍ํ w $44A!GPOUGBDFA @font-face { font-family: "MyFont"; src: url("fonts/MyFont.woff")
format("woff2"), url(“fonts/MyFont.ttf") format(“ttf"); } w $44AGPOUGBNJMZA body { font-family: "ascii", "͔ͳ", "ࣈ"; } ˣӳޠɺ͔ͳɺࣈͷॻମΛΓସ͑Δ͜ͱͰ͖·͢
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period swap
period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ UJNF
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period swap
period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ '0*5 'MBTIPG*OWJTJCMF5FYU จࣈ͕දࣔ͞Εͳ͍
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE UJNF ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period
swap period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ ϑΥϯτμϯϩʔυྃ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period swap
period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ '065 'MBTIPG6OTUZMFE5FYU จࣈͷνϥ͖ͭൃੜ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE UJNF ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period
swap period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ ͜͜·Ͱʹμϯϩʔυ Ͱ͖ͳ͍ͱதஅ͞ΕΔ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE UJNF ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period
swap period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ $ISPNF 'JSFGPYT
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE UJNF ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period
swap period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ *& &EHFT
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE UJNF ϑΥϯτඳըλΠϜϥΠϯ w $44'POUT.PEVMF-FWFM w 5IF'POU%JTQMBZ5JNFMJOF IUUQTESBGUTDTTXHPSHDTTGPOUTGPOUEJTQMBZUJNFMJOF block period
swap period font failure period ݟ͑ͳ͍จࣈͰ ϨϯμϦϯά ସϑΥϯτͰ ϨϯμϦϯά ϑΥϯτऔಘதஅ 4BGBSJʿ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ຊޠϑΥϯτͷ w ༰ྔ͕େ͖͍ ྫ͑ɺ(PPHMFͷ/PUP4BOT$+,Λར༻͢Δ߹ʜ ༻్ ϑΝΠϧ໊ ༰ྔ ݟग़͠
/PUP4BOT$+,KQ#PMEPUG .# Ϧʔυ /PUP4BOT$+,KQ.FEJVNPUG .# ຊจ /PUP4BOT$+,KQ3FHVMBSPUG .#
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ຊޠϑΥϯτͷ w άϦϑʢࣈܗʣ͕ෳࡶ ෳࡶͳάϦϑΛখαΠζͰදࣔ͢Δͱʜ ᳵ ɾQU ɾQU ᳵ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w 8FCϑΥϯτϑΥʔϚοτ format ໊শ આ໌ ิ UUG 5SVF5ZQF'POU
5SVF5ZQFΞτϥΠϯ (FOFSBM PUG 0QFO5ZQF'POU $''ΞτϥΠϯ (FOFSBM XP⒎ 8FC0QFO'POU'PSNBU 8FCϑΥϯτ༻ͷѹॖϑΥϯτ 8FC XP⒎ 8FC0QFO'POU'PSNBU XP⒎ͷѹॖΞϧΰϦζϜվળ൛ 8FC FPU &NCFEEFE0QFO5ZQF *&͚ͷ.4ಠ༷ࣗ -FHBDZ TWH 4DBMBCMF7FDUPS(SBQIJDT 47(ܗࣜͷϑΥϯτ -FHBDZ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w αϒηοτ ຊޠͰΑ͘͏จࣈ͚ͩͷϑΥϯτʹͨ͠߹ ˞+*49ୈҰਫ४ࣈɺه߸ɺجຊϥςϯจࣈɺ͔ͳɺΧφ ࢀߟࢿྉʣ5BLBOPSJ0LJ ΠψͰΘ͔ΔΣϒϑΥϯτ
1ද ϑΝΠϧ໊ ࠷దԽલ ࠷దԽޙ 80'' ࠷దԽޙ 80'' /PUP4BOT$+,KQ#PMEPUG .# ,# ,# /PUP4BOT$+,KQ.FEJVNPUG .# ,# ,# /PUP4BOT$+,KQ3FHVMBSPUG .# ,# ,#
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w "QQMFͷ8FCαΠτͷ߹ จࣈఔʴXP⒎ѹॖ IUUQTXXXBQQMFDPNKQ ϑΝΠϧ໊ ༰ྔ 4'1SP+1@SFHVMBSXP⒎
,# 4'1SP+1@TFNJCPMEXP⒎ ,#
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w ࠷దԽ݁ߏΊΜͲ͍͘͞Ͱ͢ΑͶʜ
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w 8FCϑΥϯταʔϏεΛ͏ʂ IUUQTUZQFTRVBSFDPN
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE 8FCϑΥϯτ࠷దԽ w αϒηοτͱϑΥʔϚοτม͕ࣗಈͰߦΘΕ·͢ʂ '065ʢνϥπΩʣσϑΥϧτઃఆͰ੍ʂ IUUQTUZQFTRVBSFDPN
$PQZSJHIU.PSJTBXB*OD"MM3JHIUT3FTFSWFE ࢀߟࢿྉ w ΠψͰΘ͔ΔΣϒϑΥϯτʢബ͍ຊʣ ˣۀ൛ͰϦχϡʔΞϧ ΣϒϑΥϯτ࣮ફϚχϡΞϧେଚلʢஶʣ IUUQTXXXBNB[PODPKQEQ IUUQTESBGUTDTTXHPSHDTTGPOUT IUUQTUZQFTRVBSFDPN w
$44'POUT.PEVMF-FWFM w 5ZQF4RVBSF