के साथ चित्र ड्रा करने के लिए Graphics.DrawImage() का उपयोग करना मैं एक छवि की प्रतिलिपि बना रहा हूं। (मेरा वास्तविक कोड छवि का आकार बदल रहा है लेकिन यह मेरे प्रश्न के लिए प्रासंगिक नहीं है।) मेरा कोड ऐसा कुछ दिखता है।पारदर्शिता/अल्फा चैनल
Image src = ...
using (Image dest = new Bitmap(width, height))
{
Graphics graph = Graphics.FromImage(dest);
graph.InterpolationMode = InterpolationMode.HighQualityBicubic;
graph.DrawImage(src, 0, 0, width, height);
dest.Save(filename, saveFormat);
}
यह महान काम करने के लिए जब तक src
ट्रांसपरेंसिस (जैसे GIF के रूप में) या अल्फ़ा चैनल (जैसे PNG के रूप में) के साथ एक छवि से भरी हुई है लगता है।
पारदर्शिता/अल्फा चैनल को नई छवि में स्थानांतरित करने के लिए मुझे DrawImage()
कैसे मिल सकता है, और फिर जब मैं फ़ाइल को सहेजता हूं तो उन्हें रखें?
प्रश्न यह है कि 'saveFormat' चर का मूल्य क्या है? यह 'PixelFormat.Format32bppArgb' होना चाहिए (या अल्फा चैनल के साथ एक और प्रारूप)। कोशिश भी करें: 'उपयोग (छवि dest = नई बिटमैप (चौड़ाई, ऊंचाई, PixelFormat.Format32bppArgb)) '। –
यह अल्फा चैनलों के लिए काम करता प्रतीत होता है, लेकिन जीआईएफ पारदर्शिता के लिए नहीं। इनपुट फ़ाइल के प्रारूप के आधार पर 'saveFormat' अलग-अलग होगा। अगर इनपुट फ़ाइल अल्फा चैनल का समर्थन नहीं करती है, तो यह मानना सुरक्षित है कि छवि में अल्फा चैनल पिक्सल नहीं होंगे। –
तो, जीआईएफ फाइलों के लिए 'saveFormat' का मूल्य क्या है :)? –