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 に答える