我有一個真正的問題。我已經使用以下算法進行圖像大小調整和分享。如何保存/分享按比例縮小的圖像而不會模糊
func resizeImageWith(newSize: CGSize) -> UIImage {
let horizontalRatio = newSize.width/size.width
let verticalRatio = newSize.height/size.height
let ratio = max(horizontalRatio, verticalRatio)
let newSize = CGSize(width: size.width * ratio, height: size.height * ratio)
UIGraphicsBeginImageContextWithOptions(newSize, true, 0)
draw(in: CGRect(origin: CGPoint(x: 0, y: 0), size: newSize))
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage!
}
func shareImageToSM(image : UIImage) {
let imageToShare = [ image ]
let activityVC = UIActivityViewController(activityItems: imageToShare, applicationActivities: nil)
//New Excluded Activities Code
if #available(iOS 9.0, *) {
activityVC.excludedActivityTypes = [UIActivityType.airDrop, UIActivityType.addToReadingList, UIActivityType.openInIBooks]
} else {
activityVC.excludedActivityTypes = [UIActivityType.airDrop, UIActivityType.addToReadingList]
}
//
activityVC.popoverPresentationController?.sourceView = self.view
self.present(activityVC, animated: true, completion: nil)
}
它正確地調整圖像大小。就像它將我的600x600圖像縮小爲150x150 但是,當我嘗試保存或共享縮小的圖像時,它會獲得與實際圖像相同的尺寸,但會變得模糊。請看下面的圖片。
尺寸和被保存/共享這個調整大小的圖像(150×150)。
我希望此圖像在150x150尺寸中保存/共享,但實際像素圖像質量較高。請幫助我,這對我來說是一個嚴重的問題和頭痛。
你可以發佈你的共享代碼嗎? –
done @ReinierMelian我正在使用UIActivityViewController進行圖像共享/保存。 –
您的代碼(保存)的重要部分丟失了,不是嗎? – Trilarion