5

UIBezierPathなどの近いパスを使用してiPhoneアプリで画像を切り抜きたい。長方形を使用することは可能ですが、別の形でトリミングしたいと思います。タッチを使用して1つの形状を作成し、その画像をトリミングして、それがどのように可能になるかを考えます。提案や助け。前もって感謝します。

4

3 に答える 3

2

シェイプレイヤーを使用して画像をトリミングできます。これを行うには、新しい画像の境界線として使用されるパスを作成する必要があります。この質問を見てください。

CALayer* contentLayer = [CALayer layer];
[contentLayer setFrame:CGRectMake(0, 0, 80, 80)];
CAShapeLayer* mask = [CAShapeLayer layer];

CGMutablePathRef path = CGPathCreateMutable();

CGPathMoveToPoint(path, NULL, 10, 10);
CGPathAddLineToPoint(path, NULL, 10, 80);
CGPathAddLineToPoint(path, NULL, 80, 80);
CGPathAddLineToPoint(path, NULL, 80, 10);
mask.path = path;

[contentLayer setContents:(id)[[UIImage imageNamed:@"image.png"] CGImage]];
[contentLayer setMask:mask];          

[[self layer]addSublayer:contentLayer];

このようなもの。

于 2012-08-21T07:52:14.237 に答える
1

マスクを使用してこれを実現できます。を使用してマスクを作成できますCGImageMaskCreate

例が必要な場合:

この画像マスキング コードが機能しない理由はありますか?

http://mobiledevelopertips.com/cocoa/how-to-mask-an-image.html

于 2012-08-21T08:08:23.597 に答える