添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
含蓄的松球  ·  辽宁日报·  5 天前    · 
调皮的草稿纸  ·  [Windows]ModuleNotFoun ...·  3 天前    · 
茫然的烈马  ·  辽宁日报·  2 天前    · 
潇洒的牙膏  ·  _7k7k摩尔庄园·  5 月前    · 
无聊的松鼠  ·  Activator.GetOb ...·  6 月前    · 
帅呆的匕首  ·  29 Linux ...·  1 年前    · 
PHImageManager.default().requestImage(for: asset, // 取得したい Asset を設定 targetSize: CGSize(width: 250.0, height: 250.0), contentMode: .aspectFit, options: nil, resultHandler: { (image, info) in // 取得処理完了
1
2
3
4
5
6
7
PHImageManager . default ( ) . requestImage ( for : asset , // 取得したい Asset を設定
targetSize : CGSize ( width : 250 . 0 , height : 250 . 0 ) ,
contentMode : . aspectFit ,
options : nil ,
resultHandler : { ( image , info ) in
// 取得処理完了
}

とても使えないレベルww
サイズが小さすぎたのかと思い、倍の 500.0 にしてみるも変わらず。

調べてみると、PHImageRequestOptions を設定しましょうと StackOverflow 先生が教えてくれました。
PHImageRequestOptions を調べると、deliveryMode という画像をどういう画質で渡すか設定できるものが Enum で定義されていて、opportunistic、highQualityFormat、fastFormat の3つあります。
読んだ通りなので詳細は割愛しますが、以下のように設定しただけで綺麗な画像が取得できなりました。

let options = PHImageRequestOptions() options.deliveryMode = .highQualityFormat PHImageManager.default().requestImage(for: asset, // 取得したい Asset を設定 targetSize: CGSize(width: 250.0, height: 250.0), contentMode: .aspectFit, options: options, resultHandler: { (image, info) in // 取得処理完了
1
2
3
4
5
6
7
8
9
let options = PHImageRequestOptions ( )
options . deliveryMode = . highQualityFormat
PHImageManager . default ( ) . requestImage ( for : asset , // 取得したい Asset を設定
targetSize : CGSize ( width : 250 . 0 , height : 250 . 0 ) ,
contentMode : . aspectFit ,
options : options ,
resultHandler : { ( image , info ) in
// 取得処理完了
}

東京で6年ほど iOSアプリの開発をして、今は実家に戻って介護&リモートで開発しています o(・_・)9
個人的なアプリ開発ではライトアプリを3つほど。
スマホ、ガジェット大好き ٩( ‘ω’ )و
UI/UXのデザイン系も興味あるマン。