UIImagePNGRepresentation

UIImagePNGRepresentation

我有一些图像生成代码,这些代码使用UIGraphicsBeginImageContext(),UIGraphicsGetImageFromCurrentImageContext()和UIImagePNGRepresentation()进行绘制,然后将其保存为PNG以便以后使用。

UIImagePNGRepresentation()是否考虑比例尺?例如,如果我的图像宽20点,那么生成的PNG是20像素还是40像素?

另外,当我显示这些图像时,我使用[UIImage imageWithContentsOfFile:]和[image drawInRect:]。有没有办法提示这些方法使用更高分辨率的绘图?

最佳答案

对于iPhone Application Programming Guide,您应该使用2.0的UIGraphicsBeginImageContextWithOptions为iPhone 4创建适当缩放的上下文。
至于问题的第二部分,我相信您应该在基本名称(例如,myImage @ 2x.png)上保存带有@ 2x后缀的结果png。然后,当您使用UIImage将其重新加载时,将正确设置其大小和比例。否则,图像将以1.0比例加载,并且其大小(以磅为单位)是您期望的两倍。同一文档的This section详细介绍了具有高分辨率显示器的设备的高分辨率图像。

10-05 21:17