如何用另一个 UIImage 擦除 UIImage 的一部分

发布于 2024-10-09 08:31:09 字数 361 浏览 3 评论 0原文

我发布了这个问题,但尚未找到解决方案。
我想知道是否有办法使用 UIImage 删除另一个 UIImage 的一部分 alt text

我会使用 UIImage 来“掩盖”这个丑陋的黑色背景以使其透明颜色。
也许使用 CGContextAddPath ,但我不知道如何使用它...

问候,
KL94

I posted that question and I have not yet found a solution.
I was wondering if there is a way to use an UIImage to delete a part of an other UIImage
alt text

I would use an UIImage to 'mask' this ugly black background to let a transparency color.
Maybe with CGContextAddPath but I don't know how to use it...

Regards,
KL94

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ˉ厌 2024-10-16 08:31:09

简单的解决方案

- (UIImage*)eraseImage:(UIImage*)img1 WithImage:(UIImage*)img2
{
    UIGraphicsBeginImageContext(img1.size);
    [img1 drawInRect:CGRectMake(0, 0, img1.size.width, img1.size.height)];
    [img2 drawInRect:CGRectMake(0, 0, img2.size.width, img2.size.height) blendMode:kCGBlendModeDestinationIn alpha:1.0];
    UIImage* result_img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return result_img;
}

但是你最好将图像保存为透明图像。(如PNG)

Simple solution

- (UIImage*)eraseImage:(UIImage*)img1 WithImage:(UIImage*)img2
{
    UIGraphicsBeginImageContext(img1.size);
    [img1 drawInRect:CGRectMake(0, 0, img1.size.width, img1.size.height)];
    [img2 drawInRect:CGRectMake(0, 0, img2.size.width, img2.size.height) blendMode:kCGBlendModeDestinationIn alpha:1.0];
    UIImage* result_img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return result_img;
}

But you better save image as transparent.(Like PNG)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文