उम्मीद है कि कोई मुझे सही कर देंगे अगर मैं गलत हूँ, लेकिन मैं वहाँ है कि WPF में ऐसा कुछ है नहीं लगता। लेकिन उम्मीद है कि यह उन कई मामलों में से एक है जहां प्रौद्योगिकी में प्रगति ने अप्रचलित तरीके से प्रस्तुत किया है जिस तरह से हम चीजों को करने के लिए उपयोग किए जाते हैं। जैसे "मैं अपनी डिजिटल घड़ी कैसे हवा करूं?"
मेरी समझ के लिए, क्यों SystemCodecInfo.GetImageDecoders() सिस्टम में आवश्यक है। ड्रॉइंग को सिस्टम की क्लूडी प्रकृति के साथ करना है। सिस्टम को निकालना: सिस्टम ड्रॉइंग जीडीआई + के आसपास एक प्रबंधित रैपर है, जो एक अप्रबंधित रैपर है Win32 एपीआई के एक हिस्से के आसपास। तो एक कारण हो सकता है कि Windows में बिना किसी नए कोडेक को .NET बिना इंस्टॉल किया जा सकेगा। और GetImageDecoders() से वापस लौटाया गया है केवल तारों का एक गुच्छा है जो आम तौर पर सिस्टम में वापस चला जाता है। ड्रॉइंग/जीडीआई +, और आपकी छवि को पढ़ने/सहेजने के लिए उपयुक्त DLL को खोजने और कॉन्फ़िगर करने के लिए उपयोग किया जाता है।
दूसरी तरफ, डब्ल्यूपीएफ में, मानक एन्कोडर्स और डिकोडर ढांचे में बनाए जाते हैं, और, यदि मुझे गलत नहीं लगता है, तो उस चीज़ पर निर्भर न करें जिसे स्थापित करने की गारंटी नहीं है ढांचा। निम्नलिखित वर्ग बिटमैपएन्कोडर से प्राप्त होते हैं और डब्ल्यूपीएफ के साथ आउट ऑफ़ द बॉक्स उपलब्ध हैं: बीएमपी बिटमैपएन्कोडर, गिफबिटमैप एन्कोडर, जेपीजी बिटमैप एन्कोडर, पीएनजीबीटममैन्कोडर, टिफ बिटमैप एन्कोडर, डब्ल्यूएमबीटमैपएन्कोडर। सभी समान प्रारूपों के लिए बिटमैप डिकोडर्स हैं, साथ ही आइकनबिटमैपडोडर और लेटबाउंड बिटमैप डिकोडर।
आप ऐसे मामले से निपट रहे हैं जो मैं कल्पना नहीं कर रहा हूं, लेकिन मुझे ऐसा लगता है कि यदि आपको बिटमैप एन्कोडर से प्राप्त कक्षा का उपयोग करना है, लेकिन WPF के साथ शामिल नहीं किया गया है, तो शायद यह आपकी खुद की कस्टम क्लास है कि आप अपने आवेदन के साथ स्थापित करेंगे।
उम्मीद है कि इससे मदद मिलती है। अगर मुझे तस्वीर का एक जरूरी हिस्सा याद आ रहा है, तो कृपया मुझे बताएं।
स्रोत
2008-08-18 23:41:57
मैं सिर्फ इस मुद्दे पर शोध कर रहा हूं, और आप गलत हैं। डब्ल्यूपीएफ इमेजिंग सिस्टम के समान ही है। ड्रॉइंग: Win32 सामान, जैसे डब्ल्यूआईसी (विंडोज इमेजिंग कंपोनेंट) के लिए एक प्रबंधित रैपर। फ्रेमवर्क में कोई एन्कोडर/डिकोडर नहीं बनाया गया है, और मुझे लगता है कि कभी नहीं होगा (प्रदर्शन और कोड पुन: उपयोग कारण, उनके पास यह सब विंडोज़ में है)। वे प्रारूपों को सूचीबद्ध करने के लिए कार्यक्षमता जोड़ने के लिए भूल गए :(। – fejesjoco
पुन: "मैं अपनी डिजिटल घड़ी कैसे हवा करूं?" वे अब डिजिटल घड़ियों बनाते हैं जो बैटरी को चार्ज करने के लिए आपकी गति का उपयोग करते हैं। तो वे _could_ एक हवादार के साथ एक बनाते हैं। :) –