2009-09-03 11 views
8

asp.netसी # छवि रोटेशन

मैं matrix.rotateAt का उपयोग किया था, लेकिन मैं यह काम करने के लिए तो कृपया मुझे बताओ सबसे अच्छा तरीका है क्या नहीं मिल सकता है में एक छवि को घुमाने के लिए सबसे अच्छा तरीका क्या है?

मुझे लिखना चाहिए कि छवि वस्तु के साथ छवि को घूर्णन करने से नफरत है।

+0

मैट्रिक्स रोटेशन सही है मनमाने ढंग से घूर्णन के लिए रास्ता। तो सबसे अच्छा तरीका यह है कि आपने जो कोशिश की है उसे दिखाने के लिए, इसलिए हम इसे ठीक कर सकते हैं ... – Guffa

उत्तर

21
Image myImage = Image.FromFile("myimage.png"); 
myImage.RotateFlip(RotateFlipType.Rotate180FlipNone); 

http://msdn.microsoft.com/en-us/library/system.drawing.image.rotateflip.aspx

+0

thx लेकिन कोई thx। – Broadminded

+1

आप इसे काम करने के लिए कैसे प्राप्त करते हैं। ASP.net अनुप्रयोग में छवि वर्ग भी प्राप्त नहीं कर सकता – Nick

+0

asp.net में छवि वर्ग में RotateFlip विधि नहीं है। –

7

यहां कुछ नमूना कोड है (नहीं मेरे द्वारा लिखा - पाया कुछ समय पहले 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; 
} 

कृपया ध्यान दें, यह "बॉक्स से बाहर" काम नहीं कर सकता है - नए बिटमैप के साथ कुछ समस्याएं हैं। जब आप इसे घुमाते हैं, तो यह पुरानी बिटमैप के आयत में आराम से फिट नहीं हो सकता है (आयताकार सीमा बी। विथथ, बीहेइट)।

वैसे भी यह आपको एक विचार देने के लिए है। यदि आप इसे इस तरह से करना चुनते हैं, तो मुझे यकीन है कि आप सभी विवरणों को पूरा करने में सक्षम होंगे। मैं अपने अंतिम कोड पोस्ट करना चाहते हैं, लेकिन मैं अभी मुझ पर यह भी नहीं है ...

+1

आपको अपने ग्राफिक्स के लिए 'उपयोग' कथन जोड़ना चाहिए। – MiffTheFox

+0

आप बिल्कुल सही हैं, इसे तुरंत जोड़ देंगे। –

-1

मेरा सुझाव है यह सबसे अच्छा तरीका है

// get the full path of image url 
    string path = Server.MapPath(Image1.ImageUrl) ; 

    // creating image from the image url 
    System.Drawing.Image i = System.Drawing.Image.FromFile(path); 

    // rotate Image 90' Degree 
    i.RotateFlip(RotateFlipType.Rotate90FlipXY); 

    // save it to its actual path 
    i.Save(path); 

    // release Image File 
    i.Dispose(); 

    // Set Image Control Attribute property to new image(but its old path) 
    Image1.Attributes.Add("ImageUrl", path); 
है

for more

संबंधित मुद्दे