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
430
构造基于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
230
Mac OS APP 的沙盒和相关审核技术
cngump
0
470
基于Xamarin 2.0的跨平台移动开发
cngump
0
130
Other Decks in Programming
See All in Programming
subpath importsで始めるモック生活
10tera
0
330
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
130
watsonx.ai Dojo #4 生成AIを使ったアプリ開発、応用編
oniak3ibm
PRO
1
210
OSSで起業してもうすぐ10年 / Open Source Conference 2024 Shimane
furukawayasuto
0
110
WebAssembly Unleashed: Powering Server-Side Applications
chrisft25
0
120
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
0
210
DevTools extensions で 独自の DevTool を開発する | FlutterKaigi 2024
kokiyoshida
0
130
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
220
受け取る人から提供する人になるということ
little_rubyist
0
260
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.2k
ActiveSupport::Notifications supporting instrumentation of Rails apps with OpenTelemetry
ymtdzzz
1
260
Jakarta EE meets AI
ivargrimstad
0
800
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Producing Creativity
orderedlist
PRO
341
39k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
665
120k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
33k
Fashionably flexible responsive web design (full day workshop)
malarkey
405
65k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
A Modern Web Designer's Workflow
chriscoyier
693
190k
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) <
>
感谢