बिना क्वालिटी खोए JPG को PNG में कैसे बदलें
JPG को PNG में बदलने से कोई नया नुक़सान नहीं जुड़ता। यह वह डिटेल वापस नहीं ला सकता जो JPEG पहले ही हटा चुका है, और कुछ भी कन्वर्ट करने से पहले यह फ़र्क समझ लेना ज़रूरी है।
"बिना क्वालिटी खोए" का असल मतलब क्या है
PNG लॉसलेस है। यह DEFLATE से कंप्रेस करता है, वही सामान्य तरीका जो एक ZIP फ़ाइल इस्तेमाल करती है, यानी हर बाइट वापस पाई जा सकती है और हर पिक्सेल ठीक वैसे ही लौटता है जैसे वह गया था। जब किसी JPEG को डिकोड करके PNG के रूप में लिखा जाता है, तो डिकोडर ने जो पिक्सेल बनाए उन्हें पूरी तरह सहेज लिया जाता है। कुछ भी अंदाज़न नहीं लगाया जाता, कुछ भी राउंड ऑफ नहीं होता, और एक ही फ़ाइल को दस बार कन्वर्ट करने पर हर बार वही नतीजा मिलता है।
दिक्क़त यह है कि वे पिक्सेल पहले से ही क्या हैं। वे वह दृश्य नहीं हैं जो कैमरे ने देखा था। वे JPEG एनकोडर का उस दृश्य को दोबारा बनाया हुआ रूप हैं, और PNG उस दोबारा बनाए गए रूप की एक बिल्कुल सटीक कॉपी है।
मूल डिटेल हमेशा के लिए क्यों चली जाती है
JPEG किसी इमेज को छोटे-छोटे ब्लॉक में बाँटता है, हर एक को फ़्रीक्वेंसी कोएफ़िशिएंट के एक सेट में बदलता है, और फिर उन्हें क्वांटाइज़ करता है, मोटी आकृतियाँ बचाकर रखता है और बारीक बदलाव को शून्य की तरफ़ राउंड कर देता है। ज़्यादातर फ़ोटो इसे अच्छे से झेल जाती हैं क्योंकि हमारी आँखें उस चीज़ के लिए उतनी संवेदनशील नहीं होतीं जो हटाई जाती है। लेकिन हटाई गई वैल्यू कहीं भी सेव नहीं होतीं। इसे पलटने का कोई तरीका नहीं है, कोई छिपी हुई कॉपी नहीं है, दोबारा बनाने के लिए कुछ भी नहीं बचता।
JPEG आमतौर पर रंग को ब्राइटनेस से कम रेज़ोल्यूशन पर भी सहेजता है, इसीलिए तेज़ रंग वाले किनारे, गहरे बैकग्राउंड पर लाल टेक्स्ट सबसे सामान्य उदाहरण है, हाई क्वालिटी फ़ाइल में भी धुँधले दिखते हैं। PNG में कन्वर्ट करने पर वह धुँधलापन जस का तस बना रहता है। अगर किसी JPEG में आसमान में ब्लॉकिंग या अक्षरों के चारों ओर हेलो दिखता है, तो PNG में भी बिल्कुल वही ब्लॉकिंग और वही हेलो दिखेंगे, बस एक बड़ी फ़ाइल में।
कहीं बड़ी फ़ाइल की उम्मीद रखें
जो लोग मान लेते हैं कि लॉसलेस फ़ॉर्मैट को बेहतर ही होना चाहिए, उन्हें यह हैरान करता है। PNG के पास JPEG के इस्तेमाल किए गए परसेप्चुअल शॉर्टकट इस्तेमाल करने का कोई तरीका नहीं है, इसलिए PNG में कन्वर्ट की गई फ़ोटो आमतौर पर कुछ प्रतिशत नहीं, बल्कि कई गुना बड़ी हो जाती है। बारीक डिटेल और फ़िल्म ग्रेन सबसे बुरी स्थिति होती है, क्योंकि PNG कंप्रेशन दोहराव पर टिका होता है और फ़ोटोग्राफ़िक नॉइज़ में दोहराव बहुत कम होता है।
यही मुख्य वजह है कि छुट्टियों की फ़ोटो वाले किसी फ़ोल्डर को सहेजने के लिए PNG में कन्वर्ट नहीं करना चाहिए। इससे सिर्फ़ स्टोरेज कई गुना बढ़ेगी, कुछ हासिल नहीं होगा, क्योंकि क्वालिटी का नुक़सान कैमरे के अंदर ही हो चुका था।
कन्वर्ट करना कब भी सही फ़ैसला रहता है
- आगे कहीं PNG की ज़रूरत पड़ती है। कई अपलोड फ़ॉर्म, प्रिंट टेम्पलेट, गेम इंजन और इंटरनल टूल कुछ और स्वीकार ही नहीं करते, और यही अब तक की सबसे आम वजह है।
- आप एडिटिंग शुरू करने वाले हैं। हर बार जब आप किसी JPEG को फिर से सेव करते हैं, वह दोबारा क्वांटाइज़ेशन से गुज़रता है और आर्टिफ़ैक्ट बढ़ते जाते हैं, इसलिए खोलने, बदलाव करने, सेव करने के एक दर्जन दौर के बाद नुक़सान साफ़ दिखने लगता है। एक बार कन्वर्ट करें, PNG में काम करें, और फ़ाइल बिगड़ना बंद हो जाती है।
- आपको एडिटर के इस्तेमाल से पहले अल्फ़ा चैनल का होना ज़रूरी है। यहाँ साफ़ रहना ज़रूरी है: कन्वर्ज़न ट्रांसपेरेंसी बनाता नहीं है। JPEG में अल्फ़ा होता ही नहीं, इसलिए PNG पूरी तरह ओपेक बनकर आता है। आपको बस ऐसा फ़ॉर्मैट मिलता है जो बैकग्राउंड ख़ुद हटाने के बाद ट्रांसपेरेंसी रख सकता है।
- इमेज कोई स्क्रीनशॉट या फ़्लैट ग्राफ़िक है जो ग़लती से JPEG के रूप में सेव हो गई थी। PNG आर्टिफ़ैक्ट ठीक नहीं करेगा, पर हर अगली बार सेव करने पर उन्हें बिगड़ने से रोक देगा।
कन्वर्ज़न क्या छोड़ देता है
इमेज को डिकोड किया जाता है, कैनवस पर बनाया जाता है, और नए सिरे से एनकोड किया जाता है। मेटाडेटा कहीं से कॉपी नहीं होता, इसलिए PNG में कोई EXIF ब्लॉक नहीं होता: न कैमरा मॉडल, न एक्सपोज़र सेटिंग्स, न कैप्चर की तारीख़, न GPS कोऑर्डिनेट, और न कोई कॉपीराइट या IPTC फ़ील्ड। किसी फ़ोटो को सार्वजनिक रूप से पोस्ट करने से पहले लोकेशन डेटा हटना एक असली फ़ायदा है। बिना जाने अपने एट्रिब्यूशन फ़ील्ड खो देना फ़ायदा नहीं है, इसलिए अगर ये आपके लिए मायने रखते हैं तो ओरिजिनल फ़ाइल भी रखें।
कलर मैनेजमेंट को लेकर भी उतनी ही सावधानी ज़रूरी है। ब्राउज़र कैनवस कंटेंट को sRGB में नॉर्मलाइज़ कर देते हैं, इसलिए अगर वाइड गैमट होना ही मायने रखता है तो Adobe RGB या Display P3 वाली वाइड गैमट ओरिजिनल फ़ाइल को ब्राउज़र कन्वर्टर से नहीं गुज़ारना चाहिए। इसके लिए, और 16 बिट डेप्थ या किसी ख़ास PNG पैलेट की ज़रूरत वाले किसी भी काम के लिए, ImageMagick जैसा डेस्कटॉप टूल या कोई ठीक-ठाक एडिटर ही सही जवाब है।
इसे यहाँ कैसे चलाएँ
JPG से PNG कन्वर्टर फ़ाइलों की एक क़तार लेता है और उन्हें एक ही बार में कन्वर्ट कर देता है, तैयार सेट ZIP के रूप में मिल जाता है। इसमें कोई क्वालिटी सेटिंग नहीं है, और यह कोई कमी नहीं है: PNG के पास देने के लिए कोई क्वालिटी डायल है ही नहीं। आउटपुट हर चैनल में 8 बिट का होता है, साथ में अल्फ़ा चैनल, और मूल पिक्सेल डाइमेंशन में।
यह आपकी फ़ाइल कहीं भेजता भी नहीं। कन्वर्ज़न पेज के अंदर ही होता है, जो इस असहज सच्चाई का व्यावहारिक जवाब है कि लोगों को जो कई इमेज कन्वर्ट करनी होती हैं वे पासपोर्ट, साइन किए फ़ॉर्म, मेडिकल स्कैन और इंटरनल स्क्रीनशॉट होती हैं। आप ख़ुद यह जाँच सकते हैं: डेवलपर टूल खोलें, कुछ कन्वर्ट करते समय नेटवर्क टैब देखें, और देखें कि फ़ाइल ले जाने वाला कोई रिक्वेस्ट कभी नहीं भेजा जाता।
JPG से PNG आपकी फ़ाइलों को इसी टैब में लेता है और बिना कुछ अपलोड किए कन्वर्ट करता है।
JPG से PNG खोलें