जब Vista पहली बार भेज दिया गया था, और जब WPF संस्करण 3.0 पर था, तो अंतर्निर्मित आवर्धक के साथ ज़ूमिंग वास्तव में वेक्टर-आधारित स्केलिंग करेगा।
यह काम करना बंद कर दिया जब WPF 3.5 सर्विस पैक 1 भेज दिया गया। (यह sp1 से पहले 3.5 में काम करता था।) इसके पहले यह काम करने का कारण यह है कि डीडब्लूएम (डेस्कटॉप विंडो मैनेजर) - स्क्रीन पर जो कुछ भी आप देखते हैं उसे पेश करने के लिए जिम्मेदार विंडोज़ का हिस्सा - MILCORE.DLL का प्रतिपादन करने के लिए उपयोग करता है। डब्ल्यूपीएफ के संस्करण 3.0 और 3.5 ने भी प्रस्तुत करने के लिए इस घटक का उपयोग किया - इसका मतलब यह था कि सभी WPF सामग्री देशी सामग्री थी, इसलिए बोलने के लिए। (वास्तव में, विंडोज एक्सपी पर, जिसमें डीडब्लूएम नहीं है, मिल्कोर.डीएलएल ऐसा कुछ है जो डब्ल्यूपीएफ आपके सिस्टम पर अपने फायदे के लिए रखता है। लेकिन यह विस्टा और विंडोज 7 में बनाया गया है।) जब डब्ल्यूपीएफ मिल्कोर.डीएलएल का उपयोग कर रहा था विस्टा पर प्रस्तुत करें, स्केलिंग जैसे डीडब्लूएम द्वारा लागू किए गए किसी भी प्रभाव से आप जिस तरह से डब्ल्यूपीएफ करना चाहते हैं, उसमें भी लागू होगा - यह वास्तव में बिना पिक्सेलिंग के स्केल करता है।
दुर्भाग्यवश, यह अब मामला नहीं है। और कारण यह है कि डब्ल्यूपीएफ ने नई प्रतिपादन सुविधाओं को जोड़ना शुरू कर दिया। 3.5 sp1 में, प्रश्न में नई सुविधा कस्टम पिक्सेल शेडर्स के लिए समर्थन था। इसे सक्षम करने के लिए, माइक्रोसॉफ्ट को एमआईएल को अपडेट जारी करना पड़ा। (मीडिया इंटीग्रेशन लेयर - बिट जो वास्तविक प्रतिपादन करता है।) हालांकि, वे वास्तव में मिल्कोर.डीएलएल को अपडेट करने की स्थिति में नहीं थे, क्योंकि यह विंडोज का हिस्सा है - यह है कि स्क्रीन पर जो कुछ भी आप देखते हैं वह स्क्रीन पर हो जाता है। MILCORE.DLL का एक नया संस्करण जारी करने का प्रभावी ढंग से विंडोज़ को अपडेट करना है। विंडोज के लिए रिलीज शेड्यूल उस से .NET के लिए स्वतंत्र है, और इसलिए एकमात्र तरीका डब्ल्यूपीएफ टीम उचित रूप से नई सुविधाओं को जोड़ सकती है, जो एक नया एमआईएल जहाज भेजना था। (सिद्धांत रूप में वे इसे विंडोज अपडेट के माध्यम से कर सकते थे, लेकिन चूंकि डब्ल्यूपीएफ का अब माइक्रोसॉफ्ट के माइक्रोसॉफ्ट के एक अलग विभाजन के स्वामित्व में है, इसलिए इस तरह की चीज अभ्यास में नहीं होती है।)
.NET 3.5 के रूप में एसपी 1, एमआईएल एक अलग डीएलएल में है जिसे wpf_gfx_vXXXX.dll कहा जाता है जहां vXXXX संस्करण संख्या है। .NET 4.0 में, यह wpf_gfx_v0400.dll है।
उल्टा यह है कि डब्ल्यूपीएफ को विंडोज़ को अपडेट करने की आवश्यकता के बिना प्रत्येक नए संस्करण के साथ नई प्रतिपादन सुविधाओं को जोड़ना पड़ता है। नकारात्मकता यह है कि डब्ल्यूपीएफ की प्रतिपादन अब विंडोज के साथ कसकर एकीकृत नहीं है क्योंकि यह विस्टा भेजे जाने पर संक्षेप में वापस आ गया था। और जैसा कि आपने देखा है, ऊपर की आवाज है, यह आवर्धक उतना मजेदार नहीं है जितना कि यह होता था।
स्रोत
2010-11-29 01:32:13
वाह, इस तरह का एक पूरा जवाब! अच्छी तरह से किया और स्पष्टीकरण के लिए धन्यवाद! – Boris
एक बहुत ही गहन जवाब, +1! और क्या एक शर्मनाक शर्म की बात है, यह एक अद्भुत विशेषता थी और मैंने सोचा कि हम ओएस स्तर पर और धुंध के बिना प्रत्येक खिड़की के लिए ज़ूम अलग से बदलने में सक्षम होने से केवल 5 मिनट दूर थे ... ओह ठीक है, कोई सपना देख सकता है। –
मैं वास्तव में यहां श्री ग्रिफिथ्स प्लुरसाइट वीडियो में से एक से मिला, जिसमें उन्होंने विस्टा पर आवर्धक का प्रदर्शन किया, और देखा कि यह विंडोज 10 पर मेरे लिए काम नहीं करता है - बस इयान द्वारा स्टैक ओवरव्लो पर अपडेट खोजने के लिए - अच्छा! –