UIWebView也常用于處理復(fù)雜的排版梧却,對應(yīng)排版他們之間的優(yōu)劣如下
1、CoreText占用的內(nèi)容更少败去,渲染速度更快放航。UIWebView占用的內(nèi)存多,渲染速度慢圆裕。
2三椿、CoreText在渲染界面的前就可以精確地獲得顯示內(nèi)容的高度(只要有了CTFrame即可),而WebView只有渲染出內(nèi)容后葫辐,才能獲得內(nèi)容的高度(而且還需要用JavaScript代碼來獲人衙獭)。
3耿战、CoreText的CTFrame可以在后臺線程渲染蛋叼,UIWebView的內(nèi)容只能在主線程(UI線程)渲染。
4、基于CoreText可以做更好的原生交互效果狈涮,交互效果可以更加細膩狐胎。而UIWebView的交互效果都是用JavaScript來實現(xiàn)的,在交互效果上會有一些卡頓的情況存在歌馍。例如握巢,在UIWebView下,一個簡單的按鈕按下的操作松却,都無法做出原生按鈕的即時和細膩的按下效果暴浦。
CoreText排版的劣勢:
1、CoreText渲染出來的內(nèi)容不能像UIWebView那樣方便地支持內(nèi)容的復(fù)制晓锻。
2歌焦、基于CoreText來排版需要自己處理很多復(fù)制的邏輯,例如需要自己處理圖片與文字混排相關(guān)的邏輯砚哆,也需要自己實現(xiàn)連接點擊操作的支持独撇。
在業(yè)界有很多應(yīng)用都采用CoreText技術(shù)進行排版,例如新浪微博客戶端躁锁,多看閱讀客戶端纷铣,猿題庫等等。