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
iOS のテキストレイアウトがむずかしい話
Search
Tomoki Kobayashi
December 02, 2016
Programming
2
2.1k
iOS のテキストレイアウトがむずかしい話
Mobile Act NAGOYA #3 の LT 資料
https://mobileactnagoya.connpass.com/event/44624/
Tomoki Kobayashi
December 02, 2016
Tweet
Share
More Decks by Tomoki Kobayashi
See All by Tomoki Kobayashi
Skip Skip Run Run Run ♫
temoki
0
620
さようならRxSwift こんにちは*****
temoki
1
370
Androidで不安定なPlatform Viewsとの闘い
temoki
0
870
iOSパッケージマネージャー奮闘記 完結編
temoki
2
580
事業譲渡を受けたアプリとの統合で失敗、 そしてユーザーからの評価回復に至るまで
temoki
1
630
Apple Vision Proデベロッパラボに参加してきた
temoki
0
480
年末年始の成果、そして現状の紹介
temoki
0
210
Apple HIGのススメ
temoki
0
300
ChatGPTにSVGでお絵描きさせる
temoki
0
630
Other Decks in Programming
See All in Programming
AI OCR API on Lambdaを Datadogで可視化してみた
nealle
0
180
【第4回】関東Kaggler会「Kaggleは執筆に役立つ」
mipypf
0
880
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
210
Introduction to Git & GitHub
latte72
0
120
為你自己學 Python - 冷知識篇
eddie
1
220
『リコリス・リコイル』に学ぶ!! 〜キャリア戦略における計画的偶発性理論と変わる勇気の重要性〜
wanko_it
1
600
画像コンペでのベースラインモデルの育て方
tattaka
3
1.9k
Claude Codeで実装以外の開発フロー、どこまで自動化できるか?失敗と成功
ndadayo
2
1.5k
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
730
Namespace and Its Future
tagomoris
6
540
tool ディレクティブを導入してみた感想
sgash708
1
150
Honoアップデート 2025年夏
yusukebe
1
860
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.9k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Gamification - CAS2011
davidbonilla
81
5.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
900
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Optimizing for Happiness
mojombo
379
70k
Rails Girls Zürich Keynote
gr2m
95
14k
How to Think Like a Performance Engineer
csswizardry
25
1.8k
Documentation Writing (for coders)
carmenintech
73
5k
Transcript
J04ͷ5FYU-BZPVU͕ Ή͔͍ͣ͠ Mobile Act NAGOYA #3
#1 Play Back λΠτϧཾҰ͞ΜͷεϥΠυͷӨڹ
#1 Play Back σβΠϯͷ࣮Ή͔͍ͣ͠ͱ͍͏͓Λ͠·ͨ͠
#1 Play Back σβΠϯͷ࣮Ή͔͍ͣ͠ͱ͍͏͓Λ͠·ͨ͠
#1 Play Back σβΠϯͷ࣮Ή͔͍ͣ͠ͱ͍͏͓Λ͠·ͨ͠
#1 Play Back σβΠϯͷ࣮Ή͔͍ͣ͠ͱ͍͏͓Λ͠·ͨ͠
ΞϓϦσβΠϯݚڀձ w ΞϓϦΤϯδχΞͱσβΠφʔ͕ू·ͬͯ ఆظతʹ࣮ࢪ͍ͯ͠Δࣾษڧձ w σβΠφʔͷҙਤͲ͓Γ࣮͢Δͷ͕ Ή͔͍ͣ͠ͱ͍͏ͷ͕ۙͷͷத৺ w ಛʹʮςΩετϨΠΞτʯ͕ϗοτʂ
ςΩετϨΠΞτ 6*-BCFMͰ͢ΒϨΠΞτ͕͏·͍͔͘ͳ͍ʂ ΤϯδχΞσβΠφʔͷϛεͰͳͦ͞͏ɻ w ςΩετͷஔҐஔ w ςΩετͷจࣈαΠζ w ςΩετͷߦؒ
ͦ͜Ͱ
ݕূΞϓϦ Λͭͬͯ͘Έͨ w 6*-BCFMΛϨΠΞτ w 6*'POU͔ΒಘΒΕΔ ϑΥϯτϝτϦΫεͷՄࢹԽ w /4"UUSJCVUFE4USJOHͷ /41BSBHSBQI4UZMFΛՄࢹԽ
ߦؒߦͷߴ͞ͷࢦఆ w (JU)VCͰެ։͍ͯ͠·͢ IUUQTHJUIVCDPNUFNPLJJ045FYU-BZPVU
ԤจϑΥϯτϝτϦΫε Type abc xAscender Cap Base Mean Descender Base Line
ͯ͢ͷจࣈͷج४ͱͳΔઢ Mean Line খจࣈͷߴ͞ͷج४ͱͳΔઢ Cap Line େจࣈͷߴ͞ͷج४ͱͳΔઢ Ascender Line খจࣈͷCIͳͲ͕࣋ͭΞηϯμʔͱݺΕΔ ਨͳઢͷ্෦ͷج४ͱͳΔઢ Descender Line খจࣈͷQͳͲ͕࣋ͭσΟηϯμʔͱݺΕΔ ਨͳઢͷԼ෦ͷج४ͱͳΔઢ ෳͷج४ઢͰߏ͞ΕΔ
ԤจϑΥϯτϝτϦΫε .lineHeight ςΩετ̍ߦͷߴ͞ .xHeight #BTFϥΠϯ͔Β.FBOϥΠϯ·Ͱͷߴ͞ .capHeight #BTFϥΠϯ͔Β$BQϥΠϯ·Ͱͷߴ͞ .ascender #BTFϥΠϯ͔ΒτοϓͷΦϑηοτ .descender
#BTFϥΠϯ͔ΒϘτϜͷΦϑηοτ ෛ 6*'POUͷϓϩύςΟͰѲͰ͖Δ Type abc x .lineHeight .ascender .descender .capHeight .xHeight
จϑΥϯτϝτϦΫε ʢࢀߟใʣจϑΥϯτͷϘσΟͱࣈ໘ Ѫ w จϑΥϯτͷจࣈͯ͢ಉ͡αΠζͷ ਖ਼ํܗྖҬʢʹϘσΟʣʹऩΊΒΕΔɻ w จࣈͦͷͷɺϘσΟΑΓҰճΓ খ͍͞ʮࣈ໘ʯͷதʹσβΠϯ͞ΕΔɻ ͜ΕɺจࣈΛฒͨͱ͖ʹจࣈؒʹ
దͳۭؒΛ࡞ΔͨΊɻ w 6*'POU͔Β͜ΕΒͷใಘΒΕͳ͍ ϘσΟ ࣈ໘ ͮ͡Β
Ή͔͍ͣ͠ࣄྫΛݕূ
ਨํͷஔ͕Ή͔͍ͣ͠ ࣈ໘ʹର͢Δ༨നͷӨڹ σβΠφʔ͕ ࢦఆ͢ΔϚʔδϯΛ ༨ന ༨ന ΤϯδχΞ͕ ࣮͢Δͱ͜͏ͳΔ ʢϑΥϯτʹґଘʣ
จࣈαΠζࢦఆ͕Ή͔͍ͣ͠ γεςϜϑΥϯτ߹ϑΥϯτͰ͢ ʢԤจ͕αϯϑϥϯγείɺจ͕ώϥΪϊ֯ΰγοΫʣ σβΠφʔγεςϜϑΥϯτΛҙࣝͯ͠ ώϥΪϊ֯ΰγοΫͰσβΠϯ͢Δ ΤϯδχΞγεςϜϑΥϯτΛࢦఆ͢Δ αΠζͲͪΒQUͳͷʹγεςϜϑΥϯτएׯখ͍͞ʂ
ߦؒͷࢦఆ͕Ή͔͍ͣ͠ʁ ߦؒ/41BSBHSBQI4UZMFͷMJOF4QBDJOHͰࢦఆ͢Δ ߦؒ ߦؒ
ߦؒͷࢦఆ͕Ή͔͍ͣ͠ʂ γεςϜϑΥϯτͰຊޠ͕ࠞ͡ΔͱߦͰߦ͕ؒ༩͞ΕΔ ߦؒ ΞϧϑΝϕοτͷΈ ຊޠΛؚΉ
ߦؒͷࢦఆ͕Ή͔͍ͣ͠ʂ γεςϜϑΥϯτͰͳ͘ώϥΪϊ֯ΰγοΫΛࢦఆ͢Δͱ ߦͷ߹Ͱߦؒ༩͞Εͳ͍☺ ώϥΪϊ֯ΰγοΫ γεςϜϑΥϯτ
ߦؒͷࢦఆ͕Ή͔͍ͣ͠❗ ώϥΪϊ֯ΰγοΫΛࢦఆ͢Δͱจࣈ͕ΕΔ$ ʢσΟηϯμʔෆɻ͓ͦΒ͘จϑΥϯτͱͯ͠ͷϘσΟΛ༏ઌʣ ώϥΪϊ֯ΰγοΫ QͷԼ͕Ε͍ͯΔ
·ͱΊ w J04ͷςΩετϨΠΞτΉ͔͍ͣ͠ w ͦͯ͠γϯϓϧͳղܾࡦ͕ݟ͔ͭΒͳ͍ w QYʹͩ͜ΘΔͱ͍͏ͷΉ͔͍ͣ͠
Ή͔͍ͣ͠
ࢀߟจݙ w .BTBTIJ0OPʮJ04ͷϑΥϯτͷʯ"-JBJTPO#-0( IUUQBLJTVUFDPNJPTIUNM w ,JTIJLBXB,BUTVNJʮ.BTUFSJOH5FYU,JUʯ IUUQTTQFBLFSEFDLDPNLJTIJLBXBLBUTVNJNBTUFSJOHUFYULJU w ํՆࢠʮ6*,JUపఈղઆʯΠϯϓϨεϒοΫε w
େ࡚ت࣏ʮλΠϙάϥϑΟͷجຊϧʔϧʯ4#$SFBUJWF