let layer = self.imagevIEw.layerUIGraphicsBeginImageContextWithOptions(layer.bounds.size,true,0)layer.render(in: UIGraphicsGetCurrentContext()!)let scaledImage = UIGraphicsGetimageFromCurrentimageContext()UIGraphicsEndImageContext()print("SCALED IMAGE SIZE IS \(scaledImage!.size)")print(scaledImage!.scale)
例如,如果我在iPhone 5上截取屏幕截图,图像大小将为320 * 568.我以前用相同的代码得到640 * 1136 ..什么可能导致比例因子不被应用?
当我打印图像的比例时,它将根据设备分辨率打印1,2或3,但不会应用于从上下文拍摄的图像.
解决方法 scaledImage!.size不会以像素为单位返回图像大小.CGImageGetWIDth和CGImageGetHeight返回相同的大小(以像素为单位)
那就是image.size * image.scale
如果你想测试它,首先你必须导入CoreGraphics
let imageSize = scaledImage!.size //(320,568)let imageWIDthInPixel = CGImageGetWIDth(scaledImage as! CGImage) //640let imageHeightInPixel = CGImageGetHeight(scaledImage as! CGImage) //1136总结
以上是内存溢出为你收集整理的ios – Swift:UIGraphicsBeginImageContextWithOptions比例因子设置为0但未应用全部内容,希望文章能够帮你解决ios – Swift:UIGraphicsBeginImageContextWithOptions比例因子设置为0但未应用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)