- मैं ENTIRE संदर्भ को बदलना नहीं चाहता।
मैं क्वार्ट्ज के साथ एक गेम बना रहा हूं, और मैं अपने खिलाड़ी को लाइनों, रेक्ट्स और ईलिप्स के साथ ड्राइंग कर रहा हूं।
और फिर मेरे पास 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);