在Swift中使用CGImageSourceCreateThumbnailAtIndex时应用崩溃

时间:2019-04-06 10:27:01

标签: ios swift uiimagepngrepresentation cgimagesource

我只是使用breed [ firm firms ] firm-own [ Y ;; output ] to setup clear-all setup-industry reset-ticks end to setup-industry create-firm number-of-firms [ ;; number of firms to be defined through slider ask n-of ( count firms * 0.3 ) firms [ set Y 1 ] ask n-of ( count firms * 0.6 ) firms [ set Y 2 ] ask n-of ( count firms * 0.1 ) firms [ set Y 3 ] ] end 缩小CGImageSourceCreateThumbnailAtIndex的大小。我收到崩溃消息:

  

“ IIONumber-'num'不是CFNumberRef”。

我找不到什么? 谢谢

UIImage

1 个答案:

答案 0 :(得分:0)

传递给CGImageSourceCreateThumbnailAtIndex方法的字典选项包含kCGImageSourceThumbnailMaxPixelSize。应该是CFNumber。

Apple关于kCGImageSourceThumbnailMaxPixelSize的文档

  

缩略图的最大宽度和高度(以像素为单位)。如果这个键是   未指定,缩略图的宽度和高度不受限制,并且   缩略图可能和图像本身一样大。如果存在,此密钥   必须为CFNumber值。

请确保它是CFNumber。我相信这就是崩溃的原因。请在此处找到Apple的参考:https://developer.apple.com/documentation/imageio/kcgimagesourcethumbnailmaxpixelsize?language=objc

尝试这样的选项。

let options = [
    kCGImageSourceCreateThumbnailWithTransform: true,
    kCGImageSourceCreateThumbnailFromImageAlways: true,
    kCGImageSourceThumbnailMaxPixelSize: 250 /* some size */] as CFDictionary