iOS開發應用中關于圖形和繪制案例講解
iOS開發應用中關于圖形和繪制案例講解是本文要介紹的內容,主要是來學習IOS開發中關于繪圖的一些要注意的細節,否則實現不了效果。具體內容來看詳細內容。
1、iOS支持OpenGL ES和Quartz/UIKit/CoreAnimation繪制接口。UIKit繪制必須在主線程中完成。
2、Quartz支持基于路徑的繪制,反走樣,填充,圖像,上色,坐標變換,pdf繪制顯示解析等功能。
3、UIKit支持線條繪制、圖像和顏色操作。
4、Core Animation支持動畫繪制。
5、View的使用DrawRect繪制,以下行為會觸發:
(1)View的移動和遮擋。
(2)View的隱藏和顯示。
(3)拖動View。
(4)顯示調用setNeedDisplay和setNeedDispalyRect
6、UIKit左上角為原點,右下角為終點。CoreAnimation坐下角為原點,右上角為終點。使用CGContextRotateCTM、CGContextScaleCTM、CGContextTranslateCTM來變換矩陣,或者直接使用CGAffineTransform設置變換矩陣。
7、CGContext繪制上下文,對于Bitmap和PDF,可以創建不同的context類型。
(1)變換矩陣
(2)裁剪范圍
(3)線條繪制屬性
(4)曲線精度
(5)反走樣
(6)填充屬性,描邊屬性
(7)半透明屬性
(8)顏色空間
(9)文字
(10)顏色混合模式
8、使用UIGraphicsGetCurrentContext來獲取當前的CGContext。
9、
- UIGraphicsBeginImageContextWithOptions和UIGraphicsEndImageContext
用來包含圖像繪制的代碼。
- UIGraphicsBeginPDFContextToFile(ToData)和UIGraphicsEndPDFContext
用來包含PDF繪制的代碼。
10、Path繪制,即向量繪制。推薦使用UIBezierPath,其次是CGPath。
11、翻轉屏幕變換:
- CGContextTranslateCTM(graphicsContext, 0.0, drawingRect.size.height);
- CGContextScaleCTM(graphicsContext, 1.0, -1.0);
12、Point通常等于Pixel,但是可以指定一個Point對應多個Pixel。
13、使用UIColor坐顏色空間變換。
14、繪制性能:
(1)最小化繪制調用
(2)盡量使用不透明的View
(3)在卷屏時重用View和表格
(4)在卷屏時可以不清空上次繪制結果
(5)減少繪制狀態切換。
小結:iOS開發應用中關于圖形和繪制案例講解的內容介紹完了,希望通過本文的學習能對你有所幫助!