詳解Core Animation應(yīng)用中關(guān)于Quartz2D
Core Animation應(yīng)用中關(guān)于Quartz2D是本文要介紹的內(nèi)容,主要是通過Quartz2D來學(xué)習(xí)IOS開發(fā)繪圖操作,本文來簡單的講解一下關(guān)于Quartz2D的操作,來看詳細內(nèi)容。
1、Quartz2D是底層的輕量級的2D繪制引擎,支持iOS和Mac OS,支持多種不同的設(shè)備。
2、支持圖層,向量繪制,顏色管理,反走樣和PDF的創(chuàng)建,顯示,解析。
3、Painter Model:paint to canvas, called page。在畫布上繪制的對象除了被其他對象覆蓋外,不能改變。
4、Graphics Context:繪制上下文,包括繪制參數(shù)和設(shè)備相關(guān)設(shè)定。
Bitmap Context:繪制RGB、CMYK或者灰度圖。
PDF Context:繪制PDF文件。多頁、自動識別不同設(shè)備、分辨率不變。
Windows Context:繪制窗口。
Layer Context:離線繪制對象。
PostScript Graphic Context: 打印。
5、Quartz2D的對象類型:
Path:向量繪制路徑對象。
Image:位圖對象。
Layer:離線繪制圖層對象。
Pattern:繪制模板對象。
Shading/Gradient:繪制特殊效果對象。
Function:回調(diào)函數(shù)對象,用于繪制特殊效果。
Color/Color Space:顏色和顏色空間對象。
Image Source/Destination:圖像數(shù)據(jù)移動對象。
Font:文字對象。
PDF 字典/對象/頁面/數(shù)據(jù)流/數(shù)組對象。
PDF 內(nèi)容/瀏覽對象。
Post Script對象,用于打印。
6、繪制狀態(tài):使用堆棧管理,Context創(chuàng)建時,State為空。調(diào)用CGContextSaveGState執(zhí)行push State操作。CGContextRestoreGState調(diào)用pop State操作。State包括:
(1)當前變換矩陣CTM
(2)裁剪范圍
(3)Line Style:寬度、連接、線頭、點劃、角
(4)曲線繪制設(shè)置
(5)反走樣設(shè)置
(6)填充模式和描邊模式
(7)半透明模式
(8)繪制意圖
文字:字體、大小、間距、模式
混合模式
7、坐標系統(tǒng): 左下為原點,右上為終點。UIKit相反。(需要根據(jù)不同context和操作系統(tǒng)試驗)
8、內(nèi)存管理:Ref-counted。
create/copy的對象需要hold一個refcount并release。
使用對應(yīng)的函數(shù)來管理對應(yīng)的對象。
小結(jié):詳解Core Animation應(yīng)用中關(guān)于Quartz2D的內(nèi)容介紹完了,希望通過本文的介紹能對你有所幫助!