gpt4 book ai didi

iphone - 调整 UIImage 大小以进行编辑并以高分辨率保存?

转载 作者:行者123 更新时间:2023-11-29 04:43:48 26 4
gpt4 key购买 nike

有没有办法从库中加载图片或拍摄新图片,将其调整为较小的尺寸以便能够对其进行编辑,然后以原始尺寸保存?我正在为此苦苦挣扎,无法让它发挥作用。我的调整大小代码设置如下:

firstImage = [firstImage resizedImageWithContentMode:UIViewContentModeScaleAspectFit bounds:CGSizeMake(960, 640) interpolationQuality:kCGInterpolationHigh];

然后我有一个 UIImageView :

[finalImage setFrame:CGRectMake(10, 100, 300, 232)];
finalImage.image = firstImage;

如果我将 CGSizeMake 设置为图片的原始大小,这是一个非常慢的过程。我在其他应用程序中看到它们可以处理较小的图像,并且即使对于效果而言,编辑过程也相当快。这方面的处理方法是什么?

最佳答案

您可以引用Move and Scale Demo 。这是一个自定义控件,它实现了移动、缩放和裁剪图像,这对您非常有帮助。

这也是将图像缩放到给定尺寸的最简单的代码。引用这里:Resize/Scale of an Image

您可以在这里引用它的代码

//  UIImage+Scale.h

@interface UIImage (scale)

-(UIImage*)scaleToSize:(CGSize)size;

@end

实现 UIImage Scale 类别接口(interface)就位后,让我们编写将添加到 UIImage 类的方法的代码。

//  UIImage+Scale.h

#import "UIImage+Scale.h"

@implementation UIImage (scale)

-(UIImage*)scaleToSize:(CGSize)size
{
// Create a bitmap graphics context
// This will also set it as the current context
UIGraphicsBeginImageContext(size);

// Draw the scaled image in the current context
[self drawInRect:CGRectMake(0, 0, size.width, size.height)];

// Create a new image from current context
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();

// Pop the current context from the stack
UIGraphicsEndImageContext();

// Return our new scaled image
return scaledImage;
}

@end

使用 UIImage 缩放方法调用我们添加到 UIImage 的新缩放方法就像这样简单:

#import "UIImage+Scale.h"

...

// Create an image
UIImage *image = [UIImage imageNamed:@"myImage.png"];

// Scale the image
UIImage *scaledImage = [image scaleToSize:CGSizeMake(25.0f, 35.0f)];

如果您需要更多帮助,请告诉我。

希望这对您有帮助。

关于iphone - 调整 UIImage 大小以进行编辑并以高分辨率保存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9958188/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com