/ / Завъртане на изображението в кварц? Изображението е с главата надолу! (iPhone) - iphone, обектив, изображение, ротация, кварц-графика

Завъртане на изображението в кварц? Изображението е с главата надолу! (iPhone) - iphone, цел-c, изображение, ротация, кварц-графика

  • Не искам да трансформирам целия контекст.

Направя игра с кварц и рисувам плейъра си с линии, ректи и елипси.

И тогава имам 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);