2011-06-09 17 views
5

हमें छवियों (जेपीजी, पीएनजी) का उपयोग कब करना चाहिए और जब हमें किसी एप्लिकेशन में एक्सएएमएल का उपयोग करना चाहिए।डब्ल्यूपीएफ छवियां बनाम एक्सएएमएल

छवि

+ "easy" for the designer to create what he wants 
+ are displayed the same on every computer 
- fixed resolution 

XAML

+ vector format (resolution independent, resize able, ...) 
+ can be animated 
+/- rendered by the client 
- not as many effects available as for images or are really complex to create 
- complex visual tree 

मैं किसी भी स्रोत, कि छवियों और XAML के बीच संसाधन उपयोग (सीपीयू, रैम) तुलना नहीं पा सके।

मुझे व्यक्तिगत रूप से लगता है कि सब कुछ एक्सएएमएल होना चाहिए, लेकिन मैं एक ऐसा एप्लीकेशन नहीं चाहता जो नरक के रूप में धीमा हो। क्या XAML चित्रों का उपयोग करने के लिए कोई अच्छा प्रदर्शन दिशानिर्देश हैं?


इस मैंने पढ़ा है कि आप XAML में सब कुछ करना चाहिए था और फिर का उपयोग मांग पर स्थिर चित्र बनाने के लिए है, लेकिन इस article के अनुसार यह कारण होगा खिड़की हार्डवेयर त्वरण के बिना प्रदान करने की शोध। तो मैं सोच रहा हूं कि यह वास्तव में प्रदर्शन के लिए एक सुधार है। इस तथ्य को अनदेखा करते हुए कि यह कोडर के लिए बहुत अधिक काम है।

+0

यदि आप आधुनिक हार्डवेयर पर हैं, तो मुझे चिंता नहीं होगी। एक्सएएमएल भी तेज हो सकता है क्योंकि आपके पास कम डिस्क आईओ –

+0

है, मुझे नहीं लगता कि कोई छवि XAML को कैसे प्रतिस्थापित कर सकती है। छवियां स्थिर और गैर-इंटरैक्टिव हैं ... –

+0

मुझे लगता है कि वह आइकन, बटन, विशेष रूप से उस मामले में जहां वे इंटरैक्टिव नहीं हैं, के बारे में बात कर रहे थे। सीपीयू/रैम संसाधन शुल्क एक विशिष्ट संदर्भ पर निर्भर करता है। और जैसा कि आपने पहले निर्दिष्ट किया है, दोनों के पास फायदे और कमियां हैं ... यदि आप संसाधन उपभोग पर ध्यान केंद्रित कर रहे हैं, तो मैं वाउटर सिमन्स से सहमत हूं :) – metalcam

उत्तर

5

अपनी टिप्पणी से: -

मैं केवल मामलों के बारे में बात कर रहा हूँ जहां छवि और XAML विनिमेय

एक PNG, अवधि का प्रयोग है। केवल Xaml आधारित इमेजरी का उपयोग करें जब आपको वास्तव में प्रदान किए जाने वाले फायदे की आवश्यकता होती है। कुछ एज केस अपवाद हो सकते हैं, उदाहरण के लिए, एक बड़ी छवि जिसे Xaml में दो सरल पथों से बनाया जा सकता है। हालांकि आपको यह भी मानने का एक अच्छा कारण होगा कि कोई भी प्रदर्शन अंतर सराहनीय और मूल्यवान है। आखिरकार जटिलता पर सादगी का पक्ष लें जब दोनों ही परिणाम दोनों से प्राप्त हो सकें।

+1

आप अपना पूरा उत्तर समाप्त कर सकते हैं, अंतिम वाक्य को बचा सकते हैं, और यह अभी भी +1 होगा। –

0

यदि आपका कलाकार/डिजाइनर वेक्टर ग्राफिक्स बना सकता है और कोई जटिल ग्रेडियेंट नहीं है, तो मैं वेक्टर ग्राफिक्स पसंद करूंगा। आपको सभी फायदे और कोई नुकसान नहीं मिलता है।

और यदि आप जटिल दृश्य पेड़ के बारे में चिंतित हैं, तो WPF विशेष रूप से इस तरह के मामलों के लिए बिटमैप कैशिंग प्रदान करता है।

+0

एक तरफ ध्यान दें, अभिव्यक्ति मिश्रण एडोब इलस्ट्रेटर फ़ाइलों को आयात कर सकता है, जिसका अर्थ है कि आपका ग्राफिक्स डिज़ाइनर एक परिचित प्रोग्राम में वेक्टर ग्राफिक्स बना सकता है जिसे एक्सएएमएल पथ का उपयोग करके प्रस्तुत किया जाता है। यह ब्रश के लिए ग्रेडियेंट आयात करने का भी ख्याल रखता है। –

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