0

山岳風景をイメージしたUIImageがあります。この画像の場所を、その場所の対応する2〜3ピクセルを赤に変えて表示する必要があります。どうすればこれを達成できますか?ありがとう!

4

1 に答える 1

4

次のように、画像をグラフィックスコンテキストに描画できます。

CGRect imageRect = CGRectMake(0, 0, width, height);
UIGraphicsBeginImageContext(size);
CGContextRef context = UIGraphicsGetCurrentContext();
//Save current status of graphics context
CGContextSaveGState(context);
CGContextDrawImage(context, imageRect, image.CGImage);

そして、このように好きな場所にポイントを描画します。

//CGContextFillRect(context, CGRectMake(x,y,1,1));
//Fix error according to @gsempe's comment
CGContextFillRect(context, CGRectMake(x,y,1./(image.scale),1./(image.scale)))

次に、それをUIImageに再度保存します。

CGContextRestoreGState(context);
UIImage *img = UIGraphicsGetImageFromCurrentImageContext();

また、画像の向きにも注意する必要があります。ここにいくつかの良い記事があります。

于 2013-03-01T07:58:49.020 に答える