Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
iOS のテキストレイアウトがむずかしい話
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Tomoki Kobayashi
December 02, 2016
Programming
2.2k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOS のテキストレイアウトがむずかしい話
Mobile Act NAGOYA #3 の LT 資料
https://mobileactnagoya.connpass.com/event/44624/
Tomoki Kobayashi
December 02, 2016
More Decks by Tomoki Kobayashi
See All by Tomoki Kobayashi
Ruby×iOSアプリ開発 ~共に歩んだエコシステムの物語~
temoki
0
3.7k
Liquid Glass を Metal Shader で描きたいだけの人生だった…
temoki
0
310
Skip Skip Run Run Run ♫
temoki
0
1.1k
さようならRxSwift こんにちは*****
temoki
1
680
Androidで不安定なPlatform Viewsとの闘い
temoki
0
1.3k
iOSパッケージマネージャー奮闘記 完結編
temoki
2
810
事業譲渡を受けたアプリとの統合で失敗、 そしてユーザーからの評価回復に至るまで
temoki
1
840
Apple Vision Proデベロッパラボに参加してきた
temoki
0
660
年末年始の成果、そして現状の紹介
temoki
0
350
Other Decks in Programming
See All in Programming
ChromeでローカルLLM
ryu1013
0
110
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.3k
技術的負債の返済は、AI時代の複利で効く投資 — 経営としての意思決定とその遂行
curekoshimizu
1
2.3k
The Rails Doctrine Decade
koic
2
570
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
290
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
210
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
AIに “答え“を書かせるのを やめてみた
___akari11
0
120
気持ちぃ〜角丸 Squircle
ryu1013
0
290
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
480
Workers Cache を知る
syumai
0
350
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
140
Featured
See All Featured
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
320
GitHub's CSS Performance
jonrohan
1033
470k
Documentation Writing (for coders)
carmenintech
77
5.6k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
520
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
300
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
590
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
560
エンジニアに許された特別な時間の終わり
watany
109
250k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
730
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