0
(CoreActionでマスクをレンダリングできないため)マスクを使用してイメージを正常に保存するには、少し回避策を使用しています。CGContextのレイヤー方法
CGContextRef context = CGBitmapContextCreate(nil, cWidth, cHeight, bitsPerComponent, bytesPerRow, CGColorSpaceCreateDeviceRGB(), CGImageGetBitmapInfo(image));
//the mask:
CGContextClipToMask(context, CGRectMake(0,0,1280,935), self.image.image.CGImage);
//the image to mask:
CGContextDrawImage(context, CGRectMake(0, 0, 1280,935), viewImage.CGImage);
CGImageRef mergeResult = CGBitmapContextCreateImage(context);
saver = [[UIImage alloc] initWithCGImage:mergeResult];
だからこれはかなりうまく機能し、マスクがターゲット画像にその形状の外のすべてのものをカット:
は、ここに私のコードです。これにより、周辺領域と背景が白くなります。白を表示するのではなく、イメージ/カラー/パターンなどを表示したいので、基本的に別のイメージをスタックしたいと思っています。
どうすればいいですか?ありがとう
こんにちは、私は実際にはこれを試しましたが、無駄です。何が起きているかは、最初のCGContextDrawImageがすべてを引き継ぐことです。 – user339946
実際には、それを傷つける。これは私の間違いです。光の錯覚が私のマスクが現れていないと思うように私をだましていました。ありがとうございました – user339946