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
构造基于Coretext的排版引擎
Search
cngump
May 06, 2013
Programming
1
470
构造基于Coretext的排版引擎
构造基于Coretext的排版引擎
cngump
May 06, 2013
Tweet
Share
More Decks by cngump
See All by cngump
iOS开发中的MVC
cngump
2
1.8k
IM DIY
cngump
1
260
Mac OS APP 的沙盒和相关审核技术
cngump
0
570
基于Xamarin 2.0的跨平台移动开发
cngump
0
140
Other Decks in Programming
See All in Programming
RubyとGoでゼロから作る証券システム: 高信頼性が求められるシステムのコードの外側にある設計と運用のリアル
free_world21
0
310
Ruby and LLM Ecosystem 2nd
koic
1
990
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
8.2k
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
410
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
350
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
710
Claude Codeログ基盤の構築
giginet
PRO
7
3.4k
[PHPerKaigi 2026]PHPerKaigi2025の企画CodeGolfが最高すぎて社内で内製して半年運営して得た内製と運営の知見
ikezoemakoto
0
130
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
570
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
710
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
210
Featured
See All Featured
Ruling the World: When Life Gets Gamed
codingconduct
0
180
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
150
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
43k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Skip the Path - Find Your Career Trail
mkilby
1
84
Speed Design
sergeychernyshev
33
1.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.5k
Navigating Team Friction
lara
192
16k
Exploring anti-patterns in Rails
aemeredith
2
290
Transcript
构造基于Coretext的排版引擎
Coretext是什么? Core Text framework 是iOS 及 Mac OS X下底层的
文字处理及字体渲染的API集合,简洁、高效。 CTLine CTRun CTFont Core Text 类 CTFramese=er 给定文本及页面参数,在页 的层级进行自动化排版* CTTypese=er 给定文本,在行的层级执行 断行等排版工作* CTFrame 页对象* CTLine 行对象 CTRun 字形集合对象 CTFont 字体对象
从html到矢量图形集合的映射 Css2.0全面兼容、3.0部分兼容 渲染效率(web kit)、版式处理效率(javascript)
断行,行首、末标点规则
图片甩版
自定义控件、事件
NSRange <-‐> Glyph HTML文本 NSA=ributedString
View CTLine(s) 解析 (自定 义标签) 生成(内 存及耗时 优化) 绘图(处 理重绘) 字 形
引擎模块 编辑器(web) 长文本索引生成器(命令行程序) 类库(.a, framework) <
>
感谢