【发布时间】:2012-08-23 19:47:41
【问题描述】:
我有一个使用这种代码以编程方式创建的 UIImage 图像:
UIGraphicsBeginImageContextWithOptions(CGSizeMake(128, 128), NO, 0.0f);
// Render in context
UIImage *resultImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
由于我的上下文选项指定比例为 0,因此在视网膜设备上它将设置为 2,我可以在生成的 UIImage 比例属性上确认这一点。
现在,问题是该图像尺寸为 128x128,比例为 2。当我将其放入尺寸为 64x64 且 contentMode = Center 的 UIImageView 中时,它会将我的图像渲染到 imageview 之外,大概会渲染到 128x128 的框内而无需任何缩放。
我对 Retina 图形的理解是,如果图像的比例因子为 2.0,则它应该以 1/2 大小呈现,从而导致更高的 DPI。 所以我期待图像视图以视网膜质量呈现 64x64 图像。我哪里错了?
【问题讨论】:
标签: ios uiimageview retina-display