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
Shigure Shimotori
August 31, 2018
Programming
4
3.7k
Introduction to Font and Typesetting
iOSDC Japan 2018
https://iosdc.jp/2018/
フォントと組版の30分入門
#iosdc #c
Shigure Shimotori
August 31, 2018
Tweet
Share
More Decks by Shigure Shimotori
See All by Shigure Shimotori
Synchronizationを支える技術
s_shimotori
1
160
1人で挑むSwiftコンパイラ 〜型システム入門編〜
s_shimotori
0
530
英語
s_shimotori
1
470
Parallel Socket Communication in Swift
s_shimotori
1
650
UIColor Anatomy
s_shimotori
1
2.3k
UIColor Cluster
s_shimotori
1
690
iOSDC Japan 2019 60 mins for color
s_shimotori
5
3.7k
wwdc19
s_shimotori
2
330
SE-0246 Generic Math(s) Functions
s_shimotori
2
2.4k
Other Decks in Programming
See All in Programming
NSOutlineView何もわからん:( 前編 / I Don't Understand About NSOutlineView :( Pt. 1
usagimaru
0
340
What’s New in Compose Multiplatform - A Live Tour (droidcon London 2024)
zsmb
1
480
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
170
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.2k
役立つログに取り組もう
irof
28
9.6k
macOS でできる リアルタイム動画像処理
biacco42
9
2.4k
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
とにかくAWS GameDay!AWSは世界の共通言語! / Anyway, AWS GameDay! AWS is the world's lingua franca!
seike460
PRO
1
900
Tauriでネイティブアプリを作りたい
tsucchinoko
0
370
TypeScriptでライブラリとの依存を限定的にする方法
tutinoko
3
690
Jakarta EE meets AI
ivargrimstad
0
600
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
350
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Site-Speed That Sticks
csswizardry
0
28
A Tale of Four Properties
chriscoyier
156
23k
Designing for Performance
lara
604
68k
How to Ace a Technical Interview
jacobian
276
23k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
159
15k
Automating Front-end Workflow
addyosmani
1366
200k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Designing Experiences People Love
moore
138
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Why Our Code Smells
bkeepers
PRO
334
57k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
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ײϒϩάʹਪનਤॻॻ͔͘
• ฉ͍ͯʂ
, ͓͠·͍ʂ