5

我手动创建了一个 CGBitmapContext:

bitmapContext = CGBitmapContextCreate( myImageData, width, height, 8, 4 * width, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big );

并为其绘制一个图层:

[self.myView.layer renderInContext:bitmapContext];

但是,在 Retina 上,我的图层仅渲染为原始大小的一半。

在 上设置contentScaleFactor属性UIView不会改变任何东西。

这样做的正确方法是什么?

4

1 回答 1

7

当然,在我问这个问题的那一刻,我就得到了答案。只需这样做:

float scale = self.myView.contentScaleFactor;

CGContextScaleCTM(context, scale, scale);

[self.myView.layer renderInContext:context];
于 2013-04-09T23:26:17.250 回答