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
Introduction to Font and Typesetting
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shigure Shimotori
August 31, 2018
Programming
4.1k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Introduction to Font and Typesetting
iOSDC Japan 2018
https://iosdc.jp/2018/
フォントと組版の30分入門
#iosdc #c
Shigure Shimotori
August 31, 2018
More Decks by Shigure Shimotori
See All by Shigure Shimotori
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
500
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
410
おっと、お飲みごろの時間です!
s_shimotori
1
160
Synchronizationを支える技術
s_shimotori
1
320
1人で挑むSwiftコンパイラ 〜型システム入門編〜
s_shimotori
0
1.4k
英語
s_shimotori
1
1.2k
Parallel Socket Communication in Swift
s_shimotori
1
1k
UIColor Anatomy
s_shimotori
1
3.1k
UIColor Cluster
s_shimotori
1
860
Other Decks in Programming
See All in Programming
Haskell/Servantを通してWebミドルウェアを捉え直す
pizzacat83
1
590
ローカルLLMでどこまでコードが書けるか -拡張版 / How much code can be written on a local LLM Extended
kishida
12
4.8k
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
180
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
3
1.5k
初めてのKubernetes 本番運用でハマった話
oku053
0
130
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
510
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
150
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
110
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
140
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
110
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1.2k
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
2.8k
Featured
See All Featured
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
980
The Cult of Friendly URLs
andyhume
79
6.9k
Technical Leadership for Architectural Decision Making
baasie
3
440
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Paper Plane (Part 1)
katiecoart
PRO
1
9.7k
エンジニアに許された特別な時間の終わり
watany
108
250k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
360
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
610
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Visualization
eitanlees
152
17k
Transcript
ࢿྉ !4@4IJNPUPSJ@QVCͷݻఆπΠʔτ
ϑΥϯτͱ൛ͷ30ೖ iOSDC Japan 2018 2018/08/31 ͠ͱΓ @S_Shimotori_pub
ࣗݾհ ͠ͱΓ ɹɹ @S_Shimotori_pub iOSDC ωοτϫʔΫνʔϜ ※ઈରϑΥϯτײ͋Γ·ͤΜ
ຊ
iOSΤϯδχΞʹ ฉ͍ͯཉ͍͠τʔΫ ʢ30ʣ
ϚδͰΨνͳτʔΫͰ͢ʂ
໘ന͍͔Βฉ͍ͯ΄͍͠τϐοΫ • ϑΥϯτͱ൛ͱ • ͍Ζ͍Ζͳݴޠͱ൛ • ҹΛ࡞Δ
ϑΥϯτͱ൛ͱ
׆൛ҹͷ༻ޠͰ͢ʂ
׆൛ҹͷͳ͕Ε ׆ࣈΛ Έ൛ʹͯ͠ Δʂ ҹതؗʹͯɻ
None
ϑΥϯτ ίϯϐϡʔλʔͰ͏จࣈͷσβΠϯͷ͜ͱɻ׆ࣈͷ࣌ ʹɺಉ͡ॻମͰಉ͡αΠζͷ׆ࣈηοτΛࢦ͢ݴ༿Ͱ ͕͋ͬͨɺిࢉࣸ২DTPͰͻͱͭͷϑΥϯτͰ֦େ ॖখɺมܗ͕Ͱ͖ΔͨΊɺଠࣈࣼମͳͲͷελΠϧΛؚ ΊͯϑΥϯτͱݺͿΑ͏ʹͳͬͨɻ ASCII σδλϧ༻ޠࣙయΑΓ
None
Ͱձࣾͷ׆ࣈ͕… ͳ͔ͱΏ͏(@nakamotoyuu) https://twitter.com/nakamotoyuu/status/1008488924644163585
൛ ݪߘʹج͍ͮͯ׆ࣈΛΈɼ࠷ऴతʹ൛Λ࡞Δ·Ͱͷ ࡞ۀ͓Αͼͨ͠൛ɽ ʢதུʣ खಈɼػց͞ΒʹίϯϐϡʔλͰ͋ͬͯɼ൛ͱ͍͏ දݱΘΕ͍ͯΔɽ ਤॻؗใֶ༻ޠࣙయ ୈ4൛ΑΓ
ݱࡏʢ1985ʙʣ
׆൛ҹͷ͓͜͜·Ͱʂ
͍Ζ͍Ζͳݴޠͱ൛
͜Μͳͱ͜Ζʹ൛͕ʂ • ӳޠͰ #શ෦ಉ͡͡Όͳ͍Ͱ͔͢ SPACEฤ • ຊޠͰiOSॎॻ͖ʹઓ • λΠޠͰTall Script
• ΞϥϏΞޠͰRTLͱ߹ࣈ
ӳޠͰ #શ෦ಉ͡͡Όͳ͍Ͱ͔͢ SPACEฤ
https://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9
https://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B9 શ෦ಉ͡͡Όͳ͍Ͱ͔͢
ͬͱΑ͘ݟΖʂ
͓ l*OUSPEVDUJPOUP'POUBOE5ZQFTFUUJOHz
͓ l*OUSPEVDUJPOUP'POUBOE5ZQFTFUUJOHz
※SF Pro Text
εϖʔεͱΞΩ U+2003 EM SPACE U+2002 EN SPACE U+2004 THREE-PER-EM SPACE
U+2005 FOUR-PER-EM SPACE U+2006 SIX-PER-EM SPACE
εϖʔεͱΞΩ U+2003 EM SPACE U+2002 EN SPACE U+2004 THREE-PER-EM SPACE
U+2005 FOUR-PER-EM SPACE U+2006 SIX-PER-EM SPACE
͓ᶄ
EN ENͱ1/4EM InDesign ΞΩࣗಈ ※ώϥΪϊ֯ΰγοΫ
ຊޠͰiOSॎॻ͖ʹઓ
None
͓ lʰϑΥϯτͱ൛ͷೖʱz
ʰaOϑaOΥaOϯaOτaOͱaOaO൛aOͷaOʜ
1ߦ1จࣈ
1ߦ1จࣈ ͓खຊ
͖͕͓͔͍͠ ❌ ❌ ❌ ❌ ❌ ͓खຊ ͖͕͓͔͍͠
ࠨԼʹدͬͯΔ ࠨʹدͬͯΔ
͖͕͓͔͍͠ ❌ ❌ ❌ ❌ ❌ ͓खຊ ͖͕͓͔͍͠
ࠨԼʹدͬͯΔ ࠨʹدͬͯΔ
͖͕͓͔͍͠ ❌ ❌ ❌ ❌ ❌ ͓खຊ ͖͕͓͔͍͠
ࠨԼʹدͬͯΔ ࠨʹدͬͯΔ
1ߦ1จࣈํࣜͷ • ه߸ͷ͖͕ԣॻ͖ͷ·· • ፠ԻͷҐஔԣॻ͖ͷ·· • ֯ӳࣈͷҐஔ͕ࠨʹدͬͯ͠·͏ ❌
❌ ❌ ❌ ❌
ຊޠͷॎॻ͖Ͱඞཁͳ࡞ۀ • ॎॻ͖༻ͷάϦϑΛ͏ • தԝἧ͑ͰฒΔ • JIS X 4051ͷఆΊΔͱ͜Ζʹै͏
άϦϑ ܗঢ়ʹ͍ͭͯͷநత֓೦ 1ͭͷจࣈʹෳͷάϦϑ͕͋Δ͜ͱ ɹɹe.g. Χοί։͖ʹɹɹͱɹɹͷ͔͕ͨͪ͋Δ ɹɹɹɹ፠ԻࠨԼʹॻ͘ͱ͖ͱӈ্ʹॻ͘ͱ͖͕͋Δ ʰ ʰ
ॎॻ͖༻άϦϑ ϑΥϯτʹΑͬͯผʹ༻ҙ͋Γ ༻ҙ͕ͳͯ͘90ճసͤ͞ΕOK ❌ ❌ ✅ ✅ ✅
https://developer.apple.com/documentation/foundation/nsattributedstring/key/1528658-verticalglyphform “1 indicates vertical text” “horizontal text is always used”
“1 indicates vertical text” “horizontal text is always used” https://developer.apple.com/documentation/foundation/nsattributedstring/key/1528658-verticalglyphform
glyph typesetting
จࣈͷฒ͔ͨ ӳޠbase lineͰϕʔεฒͼɺ ຊޠจࣈͷதԝͰηϯλʔฒͼ
❌ ❌ ✅ ✅ ✅
தԝ͕ἧ͏Α͏ʹฒΔ ෯ϑΥϯτΛ͏ or શ֯ӳࣈΛ͏ or CoreTextͷग़൪ ✅ ✅
✅ ✅ ✅
λΠޠͰTall Script λΠจࣈ·Ώ͛
λΠޠͷಛ • λΠจࣈΛ༻͍Δ • Tall scriptͷҰछ λΠจࣈ·Ώ͛ สวัสดีชาวโลก!
λΠจࣈ·Ώ͛
λΠจࣈ·Ώ͛ ϓϦοπͷϥʔϒຯʂ
λΠจࣈ·Ώ͛ ϓϦοπͷϥʔϒຯʂ
λΠจࣈ·Ώ͛ αϥμຯ
λΠจࣈ·Ώ͛
λΠจࣈ·Ώ͛
ΞϥϏΞޠ
ΞϥϏΞޠͷಛ • ΞϥϏΞจࣈΛ༻͍Δ • ӈԣॻ͖ • ߹ࣈ
ӈԣॻ͖ Right-to-Left ӈ͔Βࠨͷ͖Ͱॻ͍͍ͯ͘͜ͱ ݱ࣮ʹRTLͱLTR͕ࠞࡏ͢ΔํςΩετʹͳΔ
https://www.apple.com/ https://www.apple.com/ae-ar/
iOSʹ͓͚ΔRTL UIViewΛӈ͔Βࠨʹஔ navigationࠨ͕nextɺӈ͕back Ұ෦ͷΞΠίϯΛमਖ਼(సͳͲ)
࣌ܭճΓͲͬͪճΓʁ
߹ࣈ Ligature ྡΓ߹ͬͨೋͭͷจࣈ຺ུ͕ͷ͋Δ͔ͨͪͱͯࣗ͠વʹ Έ͑ΔΑ͏Ͱ͖ͨάϦϑ fi et &
ΞϥϏΞޠͷ߹ࣈ ߹લ ߹ޙ ❓❓❓
ΞϥϏΞޠͷ߹ࣈ ߹લ ߹ޙ
ݴޠͷ͓͜͜·Ͱʂ
ҹΛ࡞Δ
ೖߘͷྲྀΕ
ҹΛ࡞Δ͓ • PDFͱϑΥϯτͷ͓ • ϦονͳΦϓγϣϯ
PDFͱϑΥϯτͷ͓
࠶ܝɿAppleͱAdobeͷਤ AldusAdobe͕ඒຯ͘͠৯·ͨ͠
PDF͕อ࣋͢Δใʢྫʣ • ༻ࢴαΠζ • ϑΥϯτใ • ίϯςϯπΛஔ͢ΔҐஔ • ςΩετ •
ਤܗ
ϑΥϯτσʔλͲ͜ʁ Ӿཡऀͷίϯϐϡʔλʹ͓·͔ͤ or ඞཁͳͿΜΛPDFࣗͰอ࣋ or ΞτϥΠϯԽͯ͠ϑΥϯτใഁغ ຒΊࠐΈʁ Apple
Chancery →
ϦονͳΦϓγϣϯ
ͩ͜ΘΓϙΠϯτ͜͜ʂ ☑ ࢴ͕ްΊ ☑ ಛघࢴΛ͍ͬͯΔ ☑ ༡ͼࢴΛೖΕ͍ͯΔ ☑ ഩΛೖΕ͍ͯΔ ☑
৭͕ଟ͍ ☑ ಛ৭Λ͍ͬͯΔ ໊ʹ͓ۚΛ͏ͷָͦ͠͏
Ҏ্ʂ
·ͱΊ • ׆൛ҹͷӨڹະͩڧ͠ • ֤ݴޠͷಛͷѲ͕େࣄ • ॎॻ͖қ͕ߴ͍ • ࣮ߦҕһޫΓ͕͖ͬͯ͝ຊਓ͕͓ͬ͠Όͬͯ·ͨ͠
ͨͷ͍͠ࢀߟจݙ • https://github.com/S-Shimotori/iOSDC2018Draft • Book/bibliographies Referenfe.md ͋ͨΓ • Θͨ͠ͷiOSDCײϒϩάʹਪનਤॻॻ͔͘
• ฉ͍ͯʂ
, ͓͠·͍ʂ