2010-04-05 87 views
0
  • 我不想變換整個上下文。

我正在製作一款Quartz遊戲,我正在用線條,縮影和橢圓繪製我的玩家。在Quartz中旋轉圖像?圖像顛倒了! (iPhone)

然後我有diamong.png,我在0,0在屏幕左上角渲染。

問題是...

它呈現顛倒!

我該如何將它旋轉180度?

下面是我的一些代碼:

CGImageRef diamondImage = CGImageRetain([UIImage imageWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"Diamond.png" ofType:nil]].CGImage); 
CGContextDrawImage(context, CGRectMake(0, 0, 32, 24), diamondImage); 

如果它的任何幫助,我使用風景模式,與家庭按鈕向右。它的定義都在我的.plist,在我的ViewController的

-shouldAutorotateToInterfaceOrientation:interfaceOrientation:

我將如何旋轉/轉換呢?

回答

5

爲什麼不使用

[[UIImage imageWithContentsOfFile:…] drawInRect:CGRectMake(0, 0, 32, 24)]; 

?這需要關心你的座標變換。


如果必須使用CGContextDrawImage,則轉換整個上下文是唯一的方法。您可以使用以下方式恢復到原始狀態:

CGContextSaveGState(context); 
// transform ... 
// draw ... 
CGContextRestoreGState(context);