यहां कुछ नमूना कोड है (नहीं मेरे द्वारा लिखा - पाया कुछ समय पहले here) कि मेरे लिए काम किया है, जब तक आप कुछ विवरण संपादित करें।
private Bitmap rotateImage(Bitmap b, float angle)
{
//create a new empty bitmap to hold rotated image
Bitmap returnBitmap = new Bitmap(b.Width, b.Height);
//make a graphics object from the empty bitmap
using (Graphics g = Graphics.FromImage(returnBitmap))
{
//move rotation point to center of image
g.TranslateTransform((float)b.Width/2, (float)b.Height/2);
//rotate
g.RotateTransform(angle);
//move image back
g.TranslateTransform(-(float)b.Width/2, -(float)b.Height/2);
//draw passed in image onto graphics object
g.DrawImage(b, new Point(0, 0));
}
return returnBitmap;
}
कृपया ध्यान दें, यह "बॉक्स से बाहर" काम नहीं कर सकता है - नए बिटमैप के साथ कुछ समस्याएं हैं। जब आप इसे घुमाते हैं, तो यह पुरानी बिटमैप के आयत में आराम से फिट नहीं हो सकता है (आयताकार सीमा बी। विथथ, बीहेइट)।
वैसे भी यह आपको एक विचार देने के लिए है। यदि आप इसे इस तरह से करना चुनते हैं, तो मुझे यकीन है कि आप सभी विवरणों को पूरा करने में सक्षम होंगे। मैं अपने अंतिम कोड पोस्ट करना चाहते हैं, लेकिन मैं अभी मुझ पर यह भी नहीं है ...
स्रोत
2009-09-03 11:40:01
मैट्रिक्स रोटेशन सही है मनमाने ढंग से घूर्णन के लिए रास्ता। तो सबसे अच्छा तरीका यह है कि आपने जो कोशिश की है उसे दिखाने के लिए, इसलिए हम इसे ठीक कर सकते हैं ... – Guffa