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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Takafumi Omuro
July 26, 2018
Technology
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Webフォントことはじめ。Getting started with web fonts.
Takafumi Omuro
July 26, 2018
More Decks by Takafumi Omuro
See All by Takafumi Omuro
Devinを導入したら予想外の人たちに好評だった
tomuro
0
1.3k
進化するAWSデータストアと選択の変遷
tomuro
0
730
デザインレビューをAIにしてもらいたい!
tomuro
2
1.5k
生成AIで生産性向上
tomuro
0
690
Cloudflare Workers の実行時間が遅くなることがある
tomuro
0
54
生成AI使ってますか? 〜Amazon Bedrockで試してみよう〜
tomuro
2
470
Morisawa Fonts 新プランでのStripe導入事例
tomuro
0
220
Cloudflareを活用したWebフォントサービスの概要
tomuro
0
340
Stripeでサブスクリプションに割引を適用したときの注意点
tomuro
0
430
Other Decks in Technology
See All in Technology
LiDAR SLAMの実装とセンサ融合 ~Lie群からContinuous-Time LIOまで~
naokiakai
1
1k
そのタスクオンスケですか?
poropinai1966
0
150
Claude Codeとハーネスについて考えてみる
oikon48
18
8.9k
環境凍結という Toil を倒す -セルフサービス型 Ephemeral テスト環境の 設計と実践
shirouz
1
1.8k
Claude Code 珍プレー好プレー
shinyasaita
0
300
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
270
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
3.9k
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
150
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
3.1k
認証認可だけじゃない! ID管理の構成要素と ライフサイクルを意識しよう
ritou
1
530
Mastraエージェント、どのクラウドにデプロイする?
minorun365
PRO
2
170
オブザーバビリティ、本当に活用できてる? 〜API連携×生成AIで成熟度を自動評価〜
dmmsre
1
2.4k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
770
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
250
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Into the Great Unknown - MozCon
thekraken
41
2.6k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Making the Leap to Tech Lead
cromwellryan
135
10k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
310
The Cost Of JavaScript in 2023
addyosmani
55
10k
Documentation Writing (for coders)
carmenintech
77
5.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