关闭

关闭

关闭

封号提示

内容

北京pk10是国家彩票吗 【iphone开辟】从摄像头相册猎取图片,压缩图片,上传干事器小结[精彩]

北京赛车彩票赚钱吗:【iphone开辟】从摄像头相册猎取图片,压缩图片,上传干事器小结[精彩].doc

【iphone开辟】从摄像头相册猎取图片,压缩图片,上传干事器…

郭于芝
2018-11-14 0人阅读 0 0 0 暂无简介 举报

北京pk10是国家彩票吗 www.qdpo.net 简介:本文档为《【iphone开辟】从摄像头相册猎取图片,压缩图片,上传干事器小结[精彩]doc》,可适用于综合领域

【iphone开辟】从摄像头相册猎取图片压缩图片上传干事器小结精彩这几天在搞iphone上面一个应用的开发里面有需要摄像头相册编程和图片上传的问题在这里总结一下?!静糠种丁縤phone中图像通常存储在个地方【相册、应用程序包、沙盒、Internet】通过这个源我们就可以存取应用图片。,相册iphone的相册包含摄像头胶卷用户计算机同步的部分照片。用户可以通过UIImagePickerController类提供的交互对话框来从相册中选择图像。但是注意:相册中的图片机器路径无法直接从应用程序访问只能通过终端用户去选择和使用相册图片,应用程序包应用程序包可能会将图像与可执行程序、Infoplist文件和其他资源一同存储。我们可以通过本地文件路径来读取这些基于包的图像并在应用程序中显示它们。,沙盒借助沙盒我们可以把图片存储到Documents、Library、tmp文件夹中。这些文件均可有应用程序读取且可以通过文件路径创建图像。尽管沙盒外的部分从技术上说是可行的但是apple表明这些部分不在appstore应用程序允许访问的范围之内。,Internet应用程序可以通过图片的URL来访问Internet上的资源。以上为一些小知识来自《iphone开发秘籍(第二版)》可以自己去参考此书。下面开始切入正题从摄像头相册获取图片压缩图片上传图片。,从摄像头相册获取图片刚刚在上面的知识中提到从摄像头相册获取图片是面向终端用户的由用户去浏览并选择图片为程序使用。在这里我们需要过UIImagePickerController类来和用户交互。使用UIImagePickerController和用户交互我们需要实现个协议<UIImagePickerControllerDelegate,UINavigationControllerDelegate>。ViewCode#pragmamark从用户相册获取活动图片(void)pickImageFromAlbum{imagePicker=UIImagePickerControllerallocinitimagePickerdelegate=selfimagePickersourceType=UIImagePickerControllerSourceTypePhotoLibraryimagePickermodalTransitionStyle=UIModalTransitionStyleCoverVerticalimagePickerallowsEditing=YESselfpresentModalViewController:imagePickeranimated:YES}我们来看看上面的从相册获取图片我们首先要实例化UIImagePickerController对象然后设置imagePicker对象为当前对象设置imagePicker的图片来源为UIImagePickerControllerSourceTypePhotoLibrary表明当前图片的来源为相册除此之外还可以设置用户对图片是否可编辑。ViewCode#pragmamark从摄像头获取活动图片(void)pickImageFromCamera{imagePicker=UIImagePickerControllerallocinitimagePickerdelegate=selfimagePickersourceType=UIImagePickerControllerSourceTypeCameraimagePickermodalTransitionStyle=UIModalTransitionStyleCoverVerticalimagePickerallowsEditing=YESselfpresentModalViewController:imagePickeranimated:YES}以上是从摄像头获取图片和从相册获取图片只是图片来源的设置不一样摄像头图片的来源为UIImagePickerControllerSourceTypeCamera。在和用户交互之后用户选择好图片后会回调选择结束的方法。ViewCode(void)imagePickerController:(UIImagePickerController*)pickerdidFinishPickingMediaWithInfo:(NSDictionary*)info{UIImage*image=infoobjectForKey:"UIImagePickerControllerOriginalImage"if(pickersourceType==UIImagePickerControllerSourceTypeCamera){UIImageWriteToSavedPhotosAlbum(image,nil,nil,nil)}theImage=UtilMethodimageWithImageSimple:imagescaledToSize:CGSizeMake(,)UIImage*midImage=UtilMethodimageWithImageSimple:imagescaledToSize:CGSizeMake(,)UIImage*bigImage=UtilMethodimageWithImageSimple:imagescaledToSize:CGSizeMake(,)theImageretainselfsaveImage:theImageWithName:"salesImageSmalljpg"selfsaveImage:midImageWithName:"salesImageMidjpg"selfsaveImage:bigImageWithName:"salesImageBigjpg"selfdismissModalViewControllerAnimated:YESselfrefreshDatapickerrelease}在回调结束的方法中我们对图片进行了大小的处理为图片的上传做准备。,缩放图片缩放图片比较简单就直接放上代码让大家参考一下。ViewCode压缩图片(UIImage*)imageWithImageSimple:(UIImage*)imagescaledToSize:(CGSize)newSize{CreateagraphicsimagecontextUIGraphicsBeginImageContext(newSize)Telltheoldimagetodrawinthisnewcontext,withthedesirednewsizeimagedrawInRect:CGRectMake(,,newSizewidth,newSizeheight)GetthenewimagefromthecontextUIImage*newImage=UIGraphicsGetImageFromCurrentImageContext()EndthecontextUIGraphicsEndImageContext()ReturnthenewimagereturnnewImage},存储图像在上面我们获取到了图片并对图片进行了压缩通过之前的小知识了解到将应用需要的一些图片存入沙盒是个不错的选择而且应用程序可以直接通过路径去方法沙盒中的图片在这里我们将图片存入沙盒中的Documents目录下。ViewCode#pragmamark保存图片到document(void)saveImage:(UIImage*)tempImageWithName:(NSString*)imageName{NSData*imageData=UIImagePNGRepresentation(tempImage)NSArray*paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask,YES)NSString*documentsDirectory=pathsobjectAtIndex:NowwegetthefullpathtothefileNSString*fullPathToFile=documentsDirectorystringByAppendingPathComponent:imageNameandthenwewriteitoutimageDatawriteToFile:fullPathToFileatomically:NO},从Documents目录下获取图片要从Documents下面获取图片我们首先需要获取Documents目录的路径。ViewCode#pragmamark从文档目录下获取Documents路径(NSString*)documentFolderPath{returnNSHomeDirectory()stringByAppendingPathComponent:"Documents"}然后我们便可以通过文件名去访问获取资源了。ViewCode,上传图片项目中我们使用了ASIFormHttpRequest的开源框架http请求的部分代码如下http返回以及相关回调方法略去。ViewCode(void)upLoadSalesBigImage:(NSString*)bigImageMidImage:(NSString*)midImageSmallImage:(NSString*)smallImage{NSURL*url=NSURLURLWithString:UPLOADSERVERURLASIFormDataRequest*request=ASIFormDataRequestrequestWithURL:urlrequestsetPostValue:"photo"forKey:"type"requestsetFile:bigImageforKey:"filepicbig"requestbuildPostBodyrequestsetDelegate:selfrequestsetTimeOutSeconds:TIMEOUTSECONDSrequeststartAsynchronous}到现在为止我们已经完成了从摄像头相册获取图像、存储图像、压缩图像、上传图像。呵呵很简单吧由于之前在网上没有找到多少可用的所以在此记录一下希望给其他人一些借鉴如果有问题请留言谢谢~~晚安

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

评分:

/8

意见
反馈

立即扫码关注

爱问共享资料微信公众号

北京pk10是国家彩票吗

举报
资料