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
2k
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
さようならRxSwift こんにちは*****
temoki
1
180
Androidで不安定なPlatform Viewsとの闘い
temoki
0
460
iOSパッケージマネージャー奮闘記 完結編
temoki
2
350
事業譲渡を受けたアプリとの統合で失敗、 そしてユーザーからの評価回復に至るまで
temoki
1
450
Apple Vision Proデベロッパラボに参加してきた
temoki
0
310
年末年始の成果、そして現状の紹介
temoki
0
97
Apple HIGのススメ
temoki
0
190
ChatGPTにSVGでお絵描きさせる
temoki
0
470
Figmaプラグイン開発のススメ
temoki
0
1.1k
Other Decks in Programming
See All in Programming
CSC509 Lecture 09
javiergs
PRO
0
140
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
520
ローコードSaaSのUXを向上させるためのTypeScript
taro28
1
610
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
Less waste, more joy, and a lot more green: How Quarkus makes Java better
hollycummins
0
100
TypeScript Graph でコードレビューの心理的障壁を乗り越える
ysk8hori
2
1.1k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
8
2.2k
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
130
Contemporary Test Cases
maaretp
0
140
subpath importsで始めるモック生活
10tera
0
300
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
130
Jakarta EE meets AI
ivargrimstad
0
630
Featured
See All Featured
Being A Developer After 40
akosma
86
590k
BBQ
matthewcrist
85
9.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
Testing 201, or: Great Expectations
jmmastey
38
7.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
4
120
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
RailsConf 2023
tenderlove
29
900
Docker and Python
trallard
40
3.1k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Become a Pro
speakerdeck
PRO
25
5k
For a Future-Friendly Web
brad_frost
175
9.4k
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