我正在尝试使用以下代码绘制图像:
[img drawAtPoint:CGPointZero];
但问题是,在带有视网膜显示器的iphone上,图像不会以视网膜比例绘制。似乎图像被放大然后绘制。 我不想使用drawInRect,因为图像大小合适,使用drawInRect的速度较慢。
有什么想法吗?
答案 0 :(得分:1)
您可能没有设置适当的比例因子。创建位图上下文时,其中一个参数是比例:
void UIGraphicsBeginImageContextWithOptions(
CGSize size,
BOOL opaque,
CGFloat scale
);
根据official documentation比例是:
要应用于位图的比例因子。如果指定值 0.0,比例因子设置为设备主屏幕的比例因子。
您可能会通过1.0f
,这会导致您所描述的问题。尝试传递0.0f
。