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.8k
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
190
1人で挑むSwiftコンパイラ 〜型システム入門編〜
s_shimotori
0
680
英語
s_shimotori
1
600
Parallel Socket Communication in Swift
s_shimotori
1
700
UIColor Anatomy
s_shimotori
1
2.4k
UIColor Cluster
s_shimotori
1
720
iOSDC Japan 2019 60 mins for color
s_shimotori
5
3.7k
wwdc19
s_shimotori
2
350
SE-0246 Generic Math(s) Functions
s_shimotori
2
2.4k
Other Decks in Programming
See All in Programming
AWSのLambdaで PHPを動かす選択肢
rinchoku
2
390
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
2.1k
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
ドメインイベント増えすぎ問題
h0r15h0
2
580
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
1.9k
Azure AI Foundryのご紹介
qt_luigi
1
210
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
functionalなアプローチで動的要素を排除する
ryopeko
1
470
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
570
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
2k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Building Your Own Lightsaber
phodgson
104
6.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Git: the NoSQL Database
bkeepers
PRO
427
64k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.5k
Writing Fast Ruby
sferik
628
61k
The Language of Interfaces
destraynor
156
24k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
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ײϒϩάʹਪનਤॻॻ͔͘
• ฉ͍ͯʂ
, ͓͠·͍ʂ