我目前正在使用iOS上的Imgur将镜像上传到服务器,代码如下:

NSData* imageData = UIImagePNGRepresentation(image);
NSArray* paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* fullPathToFile = [[paths objectAtIndex:0] stringByAppendingPathComponent:@"SBTempImage.png"];
[imageData writeToFile:fullPathToFile atomically:NO];

[uploadRequest setFile:fullPathToFile forKey:@"image"];

该代码在模拟器中运行并从模拟器的图片库上传文件时运行良好,因为我使用的是快速以太网连接.然而,在iPhone上 Select 用iPhone拍摄的图像时,相同的代码会超时.所以,我try 了一下,从网上保存了一张小图片,并试图上传,这很管用.

这让我相信iPhone拍摄的大图在有点慢的3G网络上超时了.有没有办法在发送之前压缩/调整iPhone图片的大小?

推荐答案

你应该能够通过做以下事情来制作更小的图像

UIImage *small = [UIImage imageWithCGImage:original.CGImage scale:0.25 orientation:original.imageOrientation];

(对于四分之一大小的图像),然后将较小的图像转换为PNG或您需要的任何格式.

Ios相关问答推荐

什么是最好的方式使用DateFormatters在可扩展视图cellForRowAt方法

UIAlertController的空子类是否可以与`appearance(whenContainedInInstancesOf:)`一起安全使用

自定义UIControl不适用于UITapGestureRecognizer

如何根据SWIFT中的按钮点击更新文本值

许多文本字段的性能问题

执行devicectl:ProcessException时出错:进程异常退出:错误:命令超时超过5.0秒

尽管存在浮点错误,如何显示正确的计算结果.计算器应用程序

react 本机 |错误:无法解析 node_modules/react-native/index.js 中的模块

在 SwiftUI 中,绑定应该放在 ViewModel 中吗?

SwiftUI:同时拖动父视图和子视图,但手指分开

iOS SwiftUI - 从以前的 struct 调用函数

通过函数使用 Gesture 时,键入任何视图不能符合视图

XCode 14 Beta 中 NavigationStack 的正文渲染问题

try 在 iOS 中分发 Flutter 应用程序时出现Invalid Provisioning Profile Signature错误

本月使用 iOS 的天数?

如何获取 UICollectionViewCell 的矩形?

SwiftUI NavigationView navigationBarTitle LayoutConstraints 问题

iOS Swift - 获取当前本地时间和日期时间戳

iTunes Connect 中的无限制 Web 访问是什么意思

在 iOS 7 中更改返回按钮会禁用滑动导航返回