使用CGImageCreateWithImageInRect裁剪出的图片模糊的原因可能是因为裁剪的rect的大小和原始图片的分辨率不匹配。可以尝试将裁剪的rect的大小进行放大,然后再裁剪出图片。

下面是一个使用CGImageCreateWithImageInRect对UIImage对象进行裁剪的示例代码:

// 原始图片
UIImage *originalImage = [UIImage imageNamed:@"originalImage.png"];

// 裁剪的区域
CGRect cropRect = CGRectMake(50, 50, 200, 200); // 使用你自己的裁剪区域

// 将rect放大到原始图片的分辨率
CGFloat scale = originalImage.scale;
cropRect = CGRectMake(cropRect.origin.x * scale, cropRect.origin.y * scale, cropRect.size.width * scale, cropRect.size.height * scale);

// 裁剪图片
CGImageRef imageRef = CGImageCreateWithImageInRect([originalImage CGImage], cropRect);
UIImage *croppedImage = [UIImage imageWithCGImage:imageRef];

// 释放CGImageRef
CGImageRelease(imageRef);

这样裁剪出的图片应该会更清晰。

已知CGRect对UIImage对象进行裁剪使用CGImageCreateWithImageInRect裁剪出的图片很模糊oc代码

原文地址: https://www.cveoy.top/t/topic/jesz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录