CoreGraphics入門編
2352 ワード
引用: UImitはCore Graphicsフレームワークに依存し、Core Graphicsフレームワークに基づいて実現される でもある. Core Graphicsは実はCベースのAPIフレームワークで、Quartzを描画エンジンとして使用しています.つまり、Core Graphicsはオブジェクト向けの ではないことを意味します. Core Graphicsにはグラフィックコンテキスト(Context)が必要です.キャンバス です. Core Graphicsのグラフィックコンテキスト(Context)はスタック式である.スタックの上部のコンテキスト(キャンバス)にのみ図を描くことができます.
単純な図面
キャンバスの取得
ブラシ関連:
頂点はパスの開始点と終了点を指し、接続点はパスの中の転換点を指します(割引されています).
パス関連
ベース: CGPathAddLineToPointこの関数により、複雑な折れ線 を描くことができます. CGContextAddPath(context, path);この関数により、コンテキスト(キャンバス)にパスを追加する
関連する描画:
提供されるパッケージ:
関連の描画
メモリの解放
以上、手順は以下の通りです.コンテキスト(キャンバス) を取得する.は、パス(システムをカスタマイズまたは呼び出すAPI)を作成し、コンテキストに追加する. 描画内容の設定(ブラシ色、太さ、塗りつぶし領域色、シャドウ、接続点形状など) を行う.描画開始(CGcontextDrawPath) リリースパス(CGPathRelease)
単純な図面
キャンバスの取得
CGContextRef context = UIGraphicsGetCurrentContext();//
ブラシ関連:
//
CGContextSetRGBStrokeColor(context, 1.0, 0, 0, 1);//
CGContextSetRGBFillColor(context, 0, 1.0, 0, 1);//
CGContextSetLineWidth(context, 2.0);//
CGContextSetLineCap(context, kCGLineCapRound);//
CGContextSetLineJoin(context, kCGLineJoinRound);//
CGFloat lengths[2] = { 18, 9 };
CGContextSetLineDash(context, 0, lengths, 2);//
CGContextSetShadowWithColor(context, CGSizeMake(2, 2), 0, [UIColor blackColor].CGColor);//
CGContextDrawPath(context, kCGPathFillStroke);//
頂点はパスの開始点と終了点を指し、接続点はパスの中の転換点を指します(割引されています).
パス関連
ベース:
CGPathMoveToPoint(path, nil, 20, 50);// ( )
CGPathAddLineToPoint(path, nil, 20, 100);// ( )
CGContextAddPath(context, path);// context , DrawPath
関連する描画:
CGContextAddLineToPoint();//
CGContextAddCurveToPoint();//
CGContextAddQuadCurveToPoint();//
CGContextAddArcToPoint();//
CGContextClosePath();// ( )
提供されるパッケージ:
CGContextAddRect();//
CGContextAddRects();//
CGContextAddLines();//
CGContextAddEllipseInRect();//
CGContextAddArc();//
関連の描画
CGContextDrawPath(context, kCGPathFillStroke);//
メモリの解放
//
CGMutablePathRef path = CGPathCreateMutable();
// CGPathCreateMutable Core Fundation Object。 ARC 。
CGPathRelease(path);//
以上、手順は以下の通りです.