- Не искам да трансформирам целия контекст.
Направя игра с кварц и рисувам плейъра си с линии, ректи и елипси.
И тогава имам 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 за отговор № 1Защо не го използвате
[[UIImage imageWithContentsOfFile:…] drawInRect:CGRectMake(0, 0, 32, 24)];
? Това ви отнема грижи за координатите.
ако CGContextDrawImage
трябва да се използва, трансформирането на целия контекст е единственият начин. Можете да възстановите първоначалното състояние, като използвате:
CGContextSaveGState(context);
// transform ...
// draw ...
CGContextRestoreGState(context);