• PHImageManager 获取图片模糊


        PHImageRequestOptions *options = [[PHImageRequestOptions alloc] init];
        options.synchronous = true;
        options.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat;
        options.networkAccessAllowed = YES;
        options.progressHandler = ^(double progress, NSError *error, BOOL *stop, NSDictionary *info) {
            /*
             Progress callbacks may not be on the main thread. Since we're updating
             the UI, dispatch to the main queue.
             */
            dispatch_async(dispatch_get_main_queue(), ^{
                if(handler) handler(progress);
            });
        };
        
        [[PHImageManager defaultManager] requestImageForAsset:asset targetSize:PHImageManagerMaximumSize contentMode:self.view.bounds.size options:options resultHandler:^(UIImage *result, NSDictionary *info) {
            // Hide the progress view now the request has completed.
    
            // Check if the request was successful.
    
            if(manager) manager(result);
    
        }];
    

     用以上的代码去获取图片会出现模糊,不清晰的状况。(明明options.deliveryMode = PHImageRequestOptionsDeliveryModeHighQualityFormat 设置为高清了)

       其实坑就在于contentMode 写成了self.view.bounds.size,如果需要获取清晰的请设置为:PHImageManagerMaximumSize。或者换一种读取图片的方法:

        [[PHImageManager defaultManager] requestImageDataForAsset:asset options:options resultHandler:^(NSData * _Nullable imageData, NSString * _Nullable dataUTI, UIImageOrientation orientation, NSDictionary * _Nullable info) {
            UIImage * result = [UIImage imageWithData:imageData];
            if(manager) manager(result);
        }];
    

      

  • 相关阅读:
    利用Masscan批量生成随机ip地址表
    国光大力推荐(安利)Deepin15.4
    开启你的kali linux DIY之旅
    Docker入门简明教程
    Deepin Linux下的Metasploit安装及优化
    Hexo博客配置笔记
    Mac OS下开启自带的apache服务
    PentestBox简明使用教程
    Pentester中的XSS详解
    信息收集之网站镜像克隆
  • 原文地址:https://www.cnblogs.com/qiyer/p/9316163.html
Copyright © 2020-2023  润新知