当调整大小模式为.exact并且目标大小为原始图像大小的5%时,为什么PHImageManager.default()。requestImage返回“裁剪的”图像?

时间:2019-10-24 05:45:26

标签: ios swift xcode image-resizing ios13

我的要求是将原始图像调整为原始尺寸的5%,而不会裁切。假设图片为(1000x1000),则调整后的图片应为(50x50)。

下面的摘要片段可帮助您了解我的流程的结构。 谢谢

注意:我不想使用CGContext,因为我有大量图像可以在短时间内调整大小

https://developer.apple.com/documentation/photokit/phimagerequestoptionsresizemode/exact

根据文档,我使用的是.exact调整大小模式,我得到50x50的图像,但中心被裁剪了


    // Asset has original image with (1000x1000)
   // imageSize is CGSize(width:50,height:50)

 let options = PHImageRequestOptions()
     options.resizeMode = .exact
   //options.normalizedCropRect = CGRect.zero
     options.deliveryMode = .highQualityFormat
     options.isSynchronous = true
     options.isNetworkAccessAllowed = true

PHImageManager.default().requestImage(for: asset, targetSize: imageSize, contentMode: .aspectFill, options: options, resultHandler: {(resultImage, info) in

// resultImage.size is (50x50) with centerCropped
})

0 个答案:

没有答案