1.0.1的致命Bug

x###引发的错误的数据源
图片分辨率1280*852, 从相册导入

错误猜想

1、起初以为是导入的图片在读取rgba值时的某一个阶段可能orientation 有问题,但后来通过每一步都 print(image.orientation.rawValue) 发现orientation 并没有问题啊!* Holy Shit!*
2、不符合相机拍摄的图片在被缩放后,呈现到屏幕上时的origin不是0,0。 因此在计算时的范围会有问题?! 可是截图是没有错!饭后回来在试一试!
3、图像被过度放大了 导致截图所获取的6464图像实际上来自于可能是3232像素放大过后的像素?

疑惑

1、在RRView中对partialImage提取的rgba值跟最初提取的值不一样 而且差的不是一点点
这意味着? 前面的rgba提取的图像范围不对?总不可能是图像提取的函数出错了吧?在正常比例的图像中提取的数据是对的,因此这个函数本身是没有问题的。所以有可能出错的地方在...partialIamgesize?!
2、在什么情况下, rgb三个数值的顺序会变化? 图片的格式?! 难道是因为这张图片是单反拍的?

分析

在ScrollView中图片zoomScale大于0.25时,也就是过于小的图片,虽然截取的partialImage是对的,但是partialImage提取的RGB值是错误的

在RRView里对一块红色partialImage提取的rgb值(也就是对截取好传递过来准备显示的图片partialImage)

  getting pixel from 0.0, 0.0
  data: 36, 43, 116, 255, 36)
  r: 140, g: 145 b: 165

显然rgb值是错误的,而且最重要的是, data显示的是前五个rgba值,也就是说第一个像素的rgba值应该是一个红色,但却是 (36,43,116,255) Ridiculous!

ImageGetBytesPerRow获得数据明显不对
明天再继续研究一下这个函数!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容