सटीक‑साइज़ कंप्रेस टूल के बारे में
ज़्यादातर कंप्रेसर आपको एक क्वालिटी स्लाइडर देते हैं और अंतिम साइज़ का अंदाज़ा आप पर छोड़ देते हैं। यह उल्टा काम करता है: आप बताते हैं कि आपको कितना साइज़ चाहिए — 100 KB, 500 KB, 2 MB या कोई भी मान — और यह वह क्वालिटी ढूँढ़ता है जो उसके सबसे क़रीब पहुँचे। यह उन हालात के लिए है जहाँ सख़्त सीमा होती है: ऐसा अपलोड जो 500 KB से ऊपर मना कर देता है, पासपोर्ट या वीज़ा साइट जहाँ फ़ोटो 100 KB तक सीमित हो, नौकरी का आवेदन, या ऐसी वेबसाइट जो हल्की इमेज माँगती है।
यह कैसे काम करता है — सही क्वालिटी की खोज
ब्राउज़र से एक ही बार में बिलकुल N किलोबाइट की इमेज नहीं माँगी जा सकती — JPEG/WebP क्वालिटी एक डायल है, साइज़ नहीं। इसलिए टूल क्वालिटी मान पर बाइनरी सर्च करता है:
- यह इमेज को बीच की किसी क्वालिटी पर दोबारा एन्कोड करके नतीजे का साइज़ नापता है।
- अगर फ़ाइल बहुत बड़ी है तो क्वालिटी घटाता है; अगर लक्ष्य से काफ़ी नीचे है तो ज़्यादा से ज़्यादा डिटेल बचाने के लिए क्वालिटी थोड़ी बढ़ाता है।
- हर बार दायरे को आधा करते हुए यह क़रीब नौ बार दोहराता है और तेज़ी से उस सबसे अच्छी क्वालिटी तक पहुँचता है जो आपके लक्ष्य के नीचे फ़िट हो।
नतीजा वह सबसे अच्छी दिखने वाली इमेज है जो आपकी सीमा में रहती है। फिर टूल असली प्राप्त साइज़ दिखाता है, ताकि आपको हमेशा पता रहे कि कितना क़रीब पहुँचा। सब कुछ आपके ब्राउज़र में एक <canvas> पर toBlob() से चलता है; इमेज कभी अपलोड नहीं होती।
मान्यताएँ और व्यवहार
- आउटपुट फ़ॉर्मैट आप चुनते हैं — JPEG (सबसे छोटा, पारदर्शिता नहीं) या WebP (आम तौर पर और छोटा, पारदर्शिता रखता है)। छोटे लक्ष्य सबसे भरोसे से पाने के लिए JPEG डिफ़ॉल्ट है।
- इमेज के मूल डाइमेंशन बने रहते हैं — सिर्फ़ कंप्रेशन क्वालिटी बदलती है, चौड़ाई/ऊँचाई नहीं। बहुत छोटे लक्ष्य के लिए आपको रीसाइज़ भी करना पड़ सकता है (देखें सीमाएँ)।
- टूल आपके लक्ष्य के बराबर या नीचे की सबसे ऊँची क्वालिटी ढूँढ़ता है और फिर प्राप्त साइज़ बताता है। अगर लक्ष्य आसानी से पूरा हो जाए तो यह बेवजह इमेज को ख़राब नहीं करता।
- कुछ भी अपलोड, लॉग या संग्रहित नहीं होता।
सीमाएँ — ईमानदार चेतावनियाँ
- यह सटीक संख्या पर नहीं भी पहुँच सकता। कंप्रेशन अनुमानित होता है, इसलिए आप आम तौर पर लक्ष्य से थोड़ा नीचे रहेंगे (100 KB माँगने पर 94 KB मिल सकता है)। टूल हमेशा असली नतीजा दिखाता है, यह दिखावा नहीं करता कि उसने ठीक संख्या पा ली।
- कुछ लक्ष्य सिर्फ़ क्वालिटी से नहीं पाए जा सकते। बड़ी, बारीक फ़ोटो से 5 KB माँगना उसे बिगाड़े बिना संभव नहीं; ऐसे में टूल साफ़ बता देता है («5 KB तक भारी क्वालिटी नुक़सान के बिना नहीं पहुँच पाया — सबसे क़रीब: 18 KB») बजाय बिगड़ी इमेज देने के। और छोटा करने के लिए, पहले इमेज को रीसाइज़ करें, फिर कंप्रेस करें।
- PNG का एक न्यूनतम साइज़ होता है। PNG लॉसलेस है, इसलिए इसे JPEG की तरह नहीं दबाया जा सकता। यह टूल आपके लक्ष्य तक JPEG या WebP में दोबारा एन्कोड करके पहुँचता है — इसलिए PNG इनपुट का फ़ॉर्मैट बदलेगा (आपको बताया जाएगा)।
- यह एक बार में एक इमेज कंप्रेस करता है; कई के लिए बल्क इमेज कंप्रेसर इस्तेमाल करें।
गोपनीयता
पूरी प्रक्रिया आपके ब्राउज़र में Canvas API से चलती है। आपकी इमेज कभी आपके डिवाइस से बाहर नहीं जाती — कुछ भी अपलोड या संग्रहित नहीं होता।

