IOS 照片操作(獲取信息及修改照片)
最近客戶想要一個照片水印,並修改其他內容包括獲取位置,和修改事件等,哦,可以的呢,我想起了uiview變UIimage 的方法可以的
<span style="font-size:14px;">- (UIImage*)convertViewToImage:(UIView*)v { CGSize s = v.bounds.size; UIGraphicsBeginImageContextWithOptions(s, NO, [UIScreen mainScreen].scale); CGContextRef context = UIGraphicsGetCurrentContext(); [v.layer renderInContext:context]; UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext(); v.layer.contents = nil; return image; }</span><span style="font-size:12px;"> </span>
但是加的內容就是照片的時間還有GPS地位,略隱私是不
哼,我想到了 UIImagePickerController裡面的回調可以拍照片也可以從相冊裡取出來
<span style="font-size:14px;">- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {</span>
<span style="font-size:14px;"> //info裡面有大文章</span>
<span style="font-size:14px;">}</span>
ok先看拍照,拍照的info裡面含有三個參數
<span style="font-size:14px;">UIImagePickerControllerMediaMetadata //詳細數據,應有盡有 exif吧 UIImagePickerControllerMediaType //類型,jpg,png這類的 UIImagePickerControllerOriginalImage //尺寸</span>
我們所需要的數據就在 info[UIImagePickerControllerMediaMetadata] 找就可以了。時間什麼的賊詳細
下一個是從相冊拿出來的,相冊拿出來的info也是三個,只不過把
UIImagePickerControllerMediaMetadata 換成了 UIImagePickerControllerReferenceURL 看見url親爹啊,地址。
IOS8出來了新的照片庫 <Photos/Photos.h>
以前那個ass的不用了,我也不會用 哼
<span style="font-size:14px;">PHAsset *asset = [PHAsset fetchAssetsWithALAssetURLs:@[assetURL] options:nil][0];</span>
這就完了?恩,信息都在asset裡了。裡面信息挺全的,直接拿就好了。
注意我們有時候需要地址裡面恰好有地址出來
@property (nonatomic,strong, readonly,nullable) CLLocation *location;
就這個,裡面由經緯度,有了經緯度咱們要還原一下住址,開始我以為這個裡面是地球坐標,沒想到這裡已經是符合我們社會主義核心價值觀的火星坐標了。
虧我還找辦法來轉換,這個直接就是放進去等待回調出地址就可以了
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!