UTILS.
100% ब्राउज़र में
🗜️

Gzip / Zlib / Deflate कम्प्रेस और डिकम्प्रेस

टेक्स्ट को नेटिव gzip, zlib (deflate), या raw DEFLATE फ़ॉर्मेट्स के साथ ब्राउज़र में कम्प्रेस या डिकम्प्रेस करें, base64/hex आउटपुट और कम्प्रेशन रेशियो के साथ।

कम्प्रेस या डिकम्प्रेस करने के लिए ऊपर डेटा दर्ज करें।

इस टूल के बारे में

Gzip / Zlib / Deflate टूल नेटिव CompressionStream और DecompressionStream APIs का उपयोग करके डेटा को पूरी तरह आपके ब्राउज़र में कम्प्रेस और डिकम्प्रेस करता है। कंटेनर फ़ॉर्मेट चुनें — gzip (अपने 0x1F 0x8B magic bytes के साथ .gz फ़ॉर्मेट), zlib/deflate (zlib हेडर में लपेटा गया DEFLATE डेटा), या deflate-raw (बिना हेडर के नंगा DEFLATE) — और एक दिशा। कम्प्रेशन आपके UTF-8 टेक्स्ट को लेता है और कम्प्रेस किए गए बाइट्स को base64 या hex के रूप में एन्कोड करके लौटाता है; डिकम्प्रेशन base64 या hex लेता है और मूल टेक्स्ट लौटाता है।

चूँकि यह ब्राउज़र की built-in streaming compression का उपयोग करता है, कुछ भी अपलोड नहीं होता और कोई बाहरी लाइब्रेरी लोड नहीं होती — आपका डेटा आपके डिवाइस पर रहता है। तीनों फ़ॉर्मेट विनिमेय नहीं हैं: gzip और zlib समान DEFLATE पेलोड के आसपास अलग हेडर और चेकसम जोड़ते हैं (gzip के लिए CRC-32, zlib के लिए Adler-32), जबकि deflate-raw दोनों को छोड़ देता है, इसलिए आपको उसी फ़ॉर्मेट से डिकम्प्रेस करना होगा जिससे आपने कम्प्रेस किया था। कम्प्रेस करने के बाद, टूल मूल आकार, कम्प्रेस किया गया आकार, और कम्प्रेशन रेशियो को प्रतिशत के रूप में रिपोर्ट करता है (1 − compressed / original), जो यह है कि आउटपुट कितना छोटा है।

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

अक्सर पूछे जाने वाले प्रश्न

gzip, zlib, और raw deflate में क्या अंतर है?
तीनों DEFLATE एल्गोरिदम उपयोग करते हैं। gzip इसे एक 10-बाइट हेडर, magic bytes 0x1F 0x8B, और एक CRC-32 के साथ लपेटता है; zlib (deflate) इसे एक छोटे हेडर और एक Adler-32 चेकसम के साथ लपेटता है; deflate-raw का कोई हेडर या चेकसम नहीं होता। उसी फ़ॉर्मेट से डिकम्प्रेस करें जिससे आपने कम्प्रेस किया।
डिकम्प्रेशन किस इनपुट की अपेक्षा करता है?
कम्प्रेस किए गए डेटा को base64 या hex के रूप में पेस्ट करें (output-encoding चयनकर्ता से मिलाएँ)। टूल इसे बाइट्स में डिकोड करता है और चुने गए फ़ॉर्मेट के साथ inflate करता है। यदि बाइट्स truncated हैं या गलत फ़ॉर्मेट में हैं, तो यह रिपोर्ट करता है कि डेटा डिकम्प्रेस नहीं किया जा सका।
कम्प्रेस करने के बाद मेरा टेक्स्ट बड़ा क्यों हो गया?
gzip और zlib हेडर और चेकसम बाइट्स जोड़ते हैं, और DEFLATE को बचत खोजने के लिए पर्याप्त दोहराव चाहिए। बहुत छोटे या पहले से random/कम्प्रेस किए गए इनपुट के लिए वह ओवरहेड किसी भी लाभ से अधिक होता है, इसलिए आउटपुट बड़ा हो सकता है — यह अपेक्षित है।
क्या मैं कम्प्रेशन स्तर चुन सकता हूँ?
नहीं। नेटिव CompressionStream API कोई स्तर पैरामीटर उजागर नहीं करता, इसलिए एक निश्चित डिफ़ॉल्ट स्तर उपयोग होता है। आउटपुट फिर भी एक पूरी तरह वैध gzip/zlib/deflate स्ट्रीम है जिसे कोई भी स्टैंडर्ड टूल (gunzip, zlib, pako) डिकम्प्रेस कर सकता है।

और टूल