2010-05-13 7 views
8

के लिए JPEG या PNG के लिए छवि रूपांतरण प्रारूप चुनने मैं एक परियोजना जहाँ मैं छवि प्रकार की एक बड़ी संख्या एक Silverlight अनुप्रयोग में प्रदर्शन योग्य होने के लिए बदलने की आवश्यकता है - TIFF, GIF, WMF, EMF, बीएमपी, डीआईबी, आदि। मैं Silverlight ऐप को हाइड्रेट करने से पहले सर्वर पर इन रूपांतरणों को कर सकता हूं।प्रोग्राम सिल्वरलाइट प्रदर्शन

हालांकि, मुझे यकीन है कि जब मैं, या तो JPG या PNG जो प्रारूप में बदलने का चयन करना चाहिए नहीं कर रहा हूँ। क्या वहां कुछ प्रकार का मानक है जैसे टीआईएफएफ हमेशा जेपीईजी होना चाहिए और जीआईएफ हमेशा पीएनजी होना चाहिए। या, यदि कोई बीएमपी 24 बिट है, तो इसे किसी जेपीईजी में परिवर्तित किया जाना चाहिए - कोई भी निचला और यह एक पीएनजी हो सकता है। या सब कुछ एक पीएनजी है और क्यों?

मैं आमतौर पर see या see प्रश्न के इस प्रकार के जवाब में है क्या "ठीक है, अगर तस्वीर एक तस्वीर है, जेपीईजी साथ जाना" या "यदि यह सीधी रेखाएं है, PNG बेहतर है।" दुर्भाग्यवश, मेरे पास किसी भी छवि फ़ाइलों को देखने की लक्जरी नहीं होगी और कोड के माध्यम से ऐसा करने का एक मानक तरीका चाहिए, भले ही वह ज़िलियन है या फिर कथन।

क्या इस विषय के आसपास कोई मानक या सर्वोत्तम अभ्यास है?

उत्तर

5

simplest thing that could possibly work "सभी विवरण रखें" ("100% गुणवत्ता"), यानी हमेशा जेपीईजी की बजाय पीएनजी का उपयोग करें।

पीएनजी छवियां हमेशा मूल के समान दिखती हैं (यह हानि रहित है)। जेपीजी छवियां आमतौर पर मूल के समान दिखती हैं, लेकिन कुछ छवियों (जैसे लाइन कला) पर जेपीजी अजीब संपीड़न कलाकृतियों (यह हानिकारक है) देता है।

  • यह जेपीईजी छवियों को पीएनजी छवियों में परिवर्तित करने में मदद नहीं करता है। तो बिना रूपांतरण के सीधे जेपीईजी फ़ाइलों को पास करें। यदि एक टीआईएफएफ कंटेनर फ़ाइल में एक जेपीईजी छवि होती है, तो इसे मानक जेपीईजी प्रारूप फ़ाइल में निकालें; अन्यथा यह टीआईएफएफ फ़ाइल को पीएनजी में परिवर्तित करना शायद सबसे अच्छा है।
  • दोनों एक जेपीईजी फ़ाइल और एक पीएनजी फाइल बनाने पर विचार करें; यदि जेपीईजी फ़ाइल पीएनजी फ़ाइल से "महत्वपूर्ण" छोटी है, तो जेपीईजी फ़ाइल का उपयोग करें।
  • ".emf" और ".wmf" रास्टर ग्राफिक्स की बजाय स्वाभाविक रूप से वेक्टर-आधारित हैं। पीएनजी वेक्टर ग्राफिक्स के लिए जेपीईजी से बेहतर है, लेकिन सबसे अच्छा वेक्टर फ़ाइल प्रारूप होगा। क्या मानक वेक्टर ग्राफिक्स प्रारूप (".svg") का उपयोग करना संभव है?
+0

धन्यवाद डेविड, यह वास्तव में कुछ अच्छी सलाह है, खासकर पहले 2 गोलियां। # 3 पर, मैं दुर्भाग्यवश, पीएनजी और जेपीईजी एसवीजी का उपयोग नहीं कर सकता। –

1

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

1

आप Smush.it की तरह एक सेवा का उपयोग कर सकते हैं - यह आप छवियों के लिए सबसे अच्छा अनुकूलित प्रारूप बता देंगे, और आप के लिए बार दबाने चलाते हैं।

अगर मैं सही ढंग से याद है, वे एक छवि पर सभी बार दबाने चलाने के लिए, तो परिणामों की तुलना ... सेट का सबसे अच्छा लौटने।

+0

यह एक दिलचस्प सेवा है, मैं इसे पहले नहीं देखा था। यह एक तरह का है जो मैं करना चाहता हूं, खुद को छोड़कर, किसी तीसरे पक्ष के माध्यम से नहीं। हालांकि, मैं संपीड़न को दूसरे चरण के रूप में देख रहा हूं - रूपांतरण पहले है और इसके साथ मुझे किसी छवि फ़ाइल के गुणों के किसी प्रकार के क्वेरीबल सेट के आधार पर कुछ दिशानिर्देशों की आवश्यकता है। 'अगर myImage.RawFormat = ImageFormat.GIF और myImage.Flags = ImageFlagsHasAlpha फिर myImage.Save (imageName और"। "और ImageFormat.Png) वरना myImage.Save (imageName और"। "और ImageFormat.Jpg)' की तरह। असली सवाल यह है कि क्या इनपुट के आधार पर आउटपुट पसंद की कोई तार्किक पसंद है? –

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