iOS7 UIImage drawAtPoint不是视网膜

时间:2014-06-15 10:01:55

标签: ios image performance drawing

我正在尝试使用以下代码绘制图像:

[img drawAtPoint:CGPointZero];

但问题是,在带有视网膜显示器的iphone上,图像不会以视网膜比例绘制。似乎图像被放大然后绘制。 我不想使用drawInRect,因为图像大小合适,使用drawInRect的速度较慢。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可能没有设置适当的比例因子。创建位图上下文时,其中一个参数是比例:

void UIGraphicsBeginImageContextWithOptions(
   CGSize size,
   BOOL opaque,
   CGFloat scale
);

根据official documentation比例是:

  

要应用于位图的比例因子。如果指定值   0.0,比例因子设置为设备主屏幕的比例因子。

您可能会通过1.0f,这会导致您所描述的问题。尝试传递0.0f