2013-10-30 4 views
11

मैं उलझन में हूँ System.Drawing.Image और System.Drawing.Bitmap के बीच अलग अलगSystem.Drawing.Image और System.Drawing.Bitmap के बीच क्या अंतर है?

कोई उन दो प्रकार के बीच प्रमुख अंतर यह व्याख्या कर सकते हैं क्या?

और System.Drawing.Image के बजाय System.Drawing.Bitmap का उपयोग क्यों करें?

+3

http://stackoverflow.com/questions/946926/image-vs-bitmap-class यह भी जांच करें ... –

+1

ओओ परिप्रेक्ष्य से, बिटमैप 'एक छवि है। – BeemerGuy

उत्तर

12

Bitmap संभालते हैं:

System.Drawing.Bitmap : System.Drawing.Image 
{ } 

Image एक अमूर्त वर्ग है, इसका मतलब है:

सार संशोधक इंगित करता है कि बात यह है कि संशोधित किया जा रहा एक लापता या अधूरा क्रियान्वयन है।

Bitmap एक सील बंद वर्ग है, इसका मतलब है:

जब एक वर्ग के लिए आवेदन किया, सील संशोधक यह से इनहेरिट से अन्य वर्गों से बचाता है।

निम्नलिखित देखें:

Bitmap bmp = new Bitmap(filename); // Works 
Image img = new Image(); // The compiler says: "Cannot access internal constructer 'Image' here. 

इसका कारण यह है Image इस तरह से इस्तेमाल किया जा करने के लिए नहीं है। यह Bitmap कक्षा के लिए कार्यक्षमता प्रदान करता है।

इस प्रकार Image के बजाय हमेशा Bitmap का उपयोग करें।

+5

यदि मैं जोड़ सकता हूं - 'छवि' को एक पैरामीटर के रूप में ले जाने वाले फ़ंक्शन में 'बिटमैप' प्रकार के चर को पास करने से डरो मत ... क्योंकि 'बिटमैप' एक छवि है, तो यह इसे स्वीकार करेगा। उदाहरण के लिए, 'g.DrawImage (mybitmap, 0, 0) '' बिटमैप' प्रकार के 'mybitmap'' के साथ मान्य है (यहां, 'g' प्रकार 'ग्राफिक्स' है, और' DrawImage' पैरामीटर के रूप में 'छवि' लेता है)। – BeemerGuy

4

मुझे यकीन नहीं है कि आपका क्या अंतर है?

System.Drawing.ImageSystem.Drawing.Bitmap के लिए बेस क्लास है।

System.Drawing.Image अमूर्त वर्ग भी है, इसलिए आप इसका उदाहरण नहीं बना सकते हैं। आपको केवल System.Drawing.Bitmap का उदाहरण बनाना होगा।

Image.FromFile, छवि। ब्लाहब्लह ... आपको केवल Bitmap का उदाहरण देता है।

2

MSDN प्रलेखीकरण स्पष्ट रूप से कहा गया है System.Drawing.Image के बारे में के रूप में:

एक सार आधार वर्ग कि बिटमैप के लिए सुविधा प्रदान करता है और मेटाफ़ाइल उतरा कक्षाएं।

तो आप उनकी तुलना नहीं कर सकते। System.Drawing.Bitmap कक्षा सार System.Drawing.Image कक्षा का एक ठोस कार्यान्वयन है।

1

छवि एक आधार सारणी वर्ग है जो रास्टर छवि का प्रतिनिधित्व करती है। बिटमैप जीडीआई + के आधार पर इस अमूर्त वर्ग का एक कार्यान्वयन है। Image से

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