相关疑难解决方法(0)

如何通过数据大小缩小IOS中的UIImage

我期待缩减一个UIImageiOS.

我已经看到了下面的其他问题以及他们如何按尺寸缩小图像的方法. 调整图像大小Objective-C
如何在iphone中以objective-c编程调整图像
大小调整UIImage大小的最简单方法?

这些问题都是基于将图像重新调整为特定大小.在我的情况下,我希望根据最大尺寸重新调整/缩小图像.

例如,我想将最大NSData大小设置为500 KB.我知道我可以像这样得到图像的大小://检查返回图像的大小

NSData *imageData = UIImageJPEGRepresentation(image, 0.5);

// Log out the image size
NSLog(@"%lu KB",(imageData.length/1024));
Run Code Online (Sandbox Code Playgroud)

我想做的是这里的某种形式的循环.如果尺寸大于我设置的最大尺寸,我想稍微缩小图像,然后检查尺寸.如果尺寸仍然太大,则再次缩小,然后再次检查,直到它低于最大设定尺寸.

我不确定最好的办法是什么.理想情况下,我不希望始终将图像缩小到特定大小,但每次只能略微缩小图像.这样我可以拥有最大的(大小w/h)图像本身和最大尺寸(字节).如果我一次只略微缩小,那么最好的方法是什么呢?

编辑 要确认,我希望重新调整实际图像的大小,但重新调整图像的大小,使其小于最大NSData长度.例如: -
检查NSData长度
-If高于我想要将UIImage传递给方法 的最大值 - 然后
循环通过此方法每次稍微调整实际图像大小
-Until它在最大NSData长度以下,然后返回图像?

objective-c uiimage nsdata ios ios6

18
推荐指数
2
解决办法
2万
查看次数

如何在ImageIO iOS框架中升级图像?

我经历了逐步发现iOS中性能最佳的图像大小调整解决方案的常规过程,最终我得到了ImageIO.

以下效果很好

if let currentImage = CGImageSourceCreateWithData(imageData, nil)

   //...some code that extracts the existing size, and based on my maximum expected horizontal size..calculates a new horizontal/vertical maximum size..

let options: CFDictionary = [kCGImageSourceThumbnailMaxPixelSize as NSString            : maximumImageWidthOrHeight,
                             kCGImageSourceCreateThumbnailFromImageAlways as NSString   : true]

CGImageSourceCreateThumbnailAtIndex(image, options)
Run Code Online (Sandbox Code Playgroud)

但仅适用于下采样.

如果我的图像是全高清即.1920 x 1080,它被调整大小(保持纵横比),使其适合320 px horizo​​ntaly,因为这是我设置为最大水平尺寸.

但是,如果我传入一个16像素×9像素的图像..一个非常小的图像(显然具有16:9的宽高比).此图像未调整大小.

我想将它调整为320 x 180像素.

是否有一个选项组合/一个错过的方法调用/任何会在imageIO框架中给我的东西?

ios swift

13
推荐指数
2
解决办法
2174
查看次数

将UIImage放入UIButton的简单方法

我的iPhone应用程序中有一个UIButton.我将其大小设置为100x100.

我有一个400x200的图像,我希望在按钮中显示.

按钮STILL需要保持在100x100 ...我希望图像缩小以适应...但保持正确的宽高比.

我认为这就是"Aspect Fit"的用途.

我是否使用setImage或setBackgroundImage包含我的图像?

我是否为按钮设置了AspectFit?还是形象?还是背景图片?

(我需要较小的图像来增加大小.虽然较大的图像应该是DESCREASE的大小.始终保持按钮为100x100.)

我尝试了以上所有的无数组合......而我似乎无法让所有东西同时工作:

  • 请勿将按钮的大小更改为100x100.
  • 不要破坏图像的纵横比.
  • 始终增加小图像以适合按钮.
  • 始终减小大图像以适合按钮.
  • 切勿剪辑任何图像边缘.
  • 永远不要求"将UIButtons放在你所有的UIimages上"黑客攻击.
  • 不要求每个人都只是为了使用新的框架方法而升级到v4.2.1.

我看到很多应用程序,有如此多的全功能图像按钮...我无法相信我无法弄清楚这个非常简单,非常常见的事情.

啊.

iphone image aspect-ratio uibutton uiimageview

12
推荐指数
3
解决办法
9269
查看次数

SDWebImage在缓存之前调整大小/缩放/裁剪来自url的图像

如何在缓存之前调整来自URL的图像的大小,缩放和裁剪.我尝试使用以下代码实现此目的.

[cell.profilePicture setImageWithURL:[NSURL URLWithString:[rowData objectForKey:@"pictureUrl"]] placeholderImage:nil];
cell.profilePicture.image = [self imageByScalingAndCroppingForSize:CGSizeMake(cell.profilePicture.frame.size.width, cell.profilePicture.frame.size.height) image:cell.profilePicture.image];
Run Code Online (Sandbox Code Playgroud)

这产生了一个奇怪的结果.首先,它显示未调整大小/缩放/裁剪的版本.但是,当我向下滚动然后返回时,它会显示调整大小/缩放/裁剪的版本.我知道这段代码首先缓存图像并调整大小/缩放/裁剪它们.但是,我无法想出更好的解决方案.我认为应该有一些能够下载图像的东西,以便独立调整大小/缩放/裁剪和缓存.有任何想法吗?

谢谢.

objective-c ios5 sdwebimage

8
推荐指数
1
解决办法
2万
查看次数

如何以编程方式更改UISlider的拇指图像大小

我想制作自定义UISlider,就像这样

| O ---------- | - > | ----- O ------ | - > |------------〇|

thumbImage将是小的在最小值处,它将滑块值增加期间增加的大小,否则会降低.

谁知道怎么做?

objective-c uiimage uislider ios

7
推荐指数
2
解决办法
2万
查看次数

UIButton上的backgroundImage错误地缩放

当用户按下按钮然后设置宽度动画时,我试图给我的UIButton一个新的背景图像.问题是按钮没有缩放图像(我只使用视网膜图像).

点击之前:

在此输入图像描述

点击后:

在此输入图像描述

以及使事情发生的代码:

UIImage *buttonProfileDefault = [[UIImage imageNamed:@"Profile_Button_Default"] resizableImageWithCapInsets:UIEdgeInsetsMake(3, 3, 3, 3)];
        [self.profileButton setBackgroundImage:buttonProfileDefault forState:UIControlStateNormal];

[self.profileButton removeConstraint:self.profileButtonConstraint];

// Animate
CGRect originalFrame = self.profileButton.frame;
originalFrame.size.width = 40;
[UIView animateWithDuration:0.2f
    animations:^{
        self.profileButton.frame = originalFrame;
    }
        completion:^(BOOL finished) {
    }];
Run Code Online (Sandbox Code Playgroud)

iphone xcode objective-c storyboard ios

6
推荐指数
1
解决办法
2629
查看次数

使用UIImagePickerController拍照后如何调整图像尺寸?

如何在文件夹中保存照片时调整图像大小???

这就是我在iphone中保存图像的方法.

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *imageFile = nil;
NSString *name_png = [NSString stringWithFormat:@"%@.png",photoName];
imageFile = [documentsDirectory stringByAppendingPathComponent:name_png];
[UIImagePNGRepresentation(self.theImageView.image) writeToFile:imageFile atomically:YES];
Run Code Online (Sandbox Code Playgroud)

如何将其从原始大小调整为200 X 200像素?

或者我可以加载图像文件而不是调整大小吗?

实际上,我创建了一个包含许多图像的封面流程,图像来自相机.

我可以找到一个封面流样本,但是当我加载图像时,它充满了iphone屏幕.

不小的封面图片.

iphone objective-c scale uiimagepickercontroller ios

5
推荐指数
1
解决办法
6949
查看次数

压缩UIImage

我需要帮助调整UIImage的大小.

例如:我在UICollection视图中显示很多图像,但这些图像的大小为2到4 MB.我需要压缩或调整这些图像的大小.

我发现了这个:如何在上传到服务器之前压缩/调整iPhone OS SDK上的图像大小?但我不明白如何实现它.

iphone objective-c uiimage ios

5
推荐指数
1
解决办法
1万
查看次数

使用Swift更改GoogleMap中标记的大小

我已经放置了一个GoogleMap包含的标记Image.但是图像的大小要大得多.那么我怎样才能减小标记的大小.我试过这个:

marker.icon = self.image(marker.icon, scaledToSize: CGSize(width: 3.0, height: 3.0))
Run Code Online (Sandbox Code Playgroud)

google-maps swift swift2

4
推荐指数
3
解决办法
6150
查看次数

Core Image是否立即加载图像数据?

假设我想找出图像的大小,所以如果用户试图在我的iPad应用程序中加载10,000x10,000像素的图像,我可以用对话框显示它们而不是崩溃.如果我这样做[UIImage imageNamed:][UIImage imageWithContentsOfFile:]那将立即将我的潜在大图像加载到内存中.

如果我使用Core Image,请这样说:

CIImage *ciImage = [CIImage imageWithContentsOfURL:[NSURL fileURLWithPath:imgPath]];
Run Code Online (Sandbox Code Playgroud)

然后问我的新CIImage尺寸:

CGSize imgSize = ciImage.extent.size;
Run Code Online (Sandbox Code Playgroud)

是否会将整个图像加载到内存中告诉我这个,或者只是查看文件的元数据以发现图像的大小?

core-image ios

3
推荐指数
1
解决办法
571
查看次数