ब्राउज़र-आधारित टूल

Base64 इमेज कंप्रेसर

Base64 इमेज को स्थानीय रूप से डिकोड करें, आयाम, क्वालिटी या फ़ॉर्मेट बदलें और img src, CSS, JSON व API के लिए मानक आउटपुट रखें।

ब्राउज़र में स्थानीय प्रोसेसिंग · कोई अपलोड नहीं · कोई अकाउंट नहीं

खाली स्थान वाला Raw Base64 या पूरा data:image/...;base64,... पेस्ट करें। दूरस्थ URL समर्थित नहीं है।

कंप्रेशन सेटिंग्स

परिणाम

मूल पूर्वावलोकन

इमेज चुनें या पेस्ट करें।

परिणाम का पूर्वावलोकन

इमेज चुनें या पेस्ट करें।

मूल जानकारी

परिणाम की जानकारी

Base64 एन्कोडिंग है, इमेज कंप्रेशन नहीं

मानक Base64 हर तीन बाइट को चार वर्णों में दिखाता है। इसकी सटीक लंबाई 4 × ceil(n / 3) होती है और लंबे डेटा में बढ़ोतरी लगभग 33.3% रहती है। Data URL में MIME उपसर्ग अलग से जुड़ता है।

यह टूल पहले इमेज के बाइट घटाता है: इमेज डिकोड करता है, जरूरत पड़ने पर आयाम, क्वालिटी या फ़ॉर्मेट बदलता है और फिर मानक Base64 बनाता है।

Gzip का परिणाम अलग प्रकार का डेटा है

Base64 पर Gzip लगाने से संपीड़ित बाइनरी डेटा बनता है। इमेज दिखाने से पहले उसे खोलना जरूरी है; उसे दोबारा Base64 करने पर भी सामान्य इमेज Data URL नहीं बनती।

JPEG, PNG और WebP पहले से संपीड़ित फ़ॉर्मेट हैं। पिक्सेल, हानिपूर्ण क्वालिटी, मेटाडेटा या फ़ॉर्मेट बदलने से आकार घट सकता है, लेकिन परिणाम के दोषरहित या छोटा होने की गारंटी नहीं है।

लक्ष्य आकार, पर बड़ा परिणाम नहीं

JPEG और WebP की क्वालिटी निश्चित संख्या में खोजी जाती है। जरूरत पड़ने पर पक्षानुपात रखते हुए सीमित चरणों में आयाम घटाए जाते हैं।

यदि मानक Base64 के वर्ण कम नहीं होते तो मूल बाइट सुरक्षित रखे जाते हैं। लक्ष्य KB पूरा न हो तो सबसे नजदीकी छोटा परिणाम स्पष्ट सूचना के साथ दिया जाता है।

स्थानीय प्रोसेसिंग और स्पष्ट सीमाएं

पूरा काम इसी टैब में होता है: न अपलोड, न दूरस्थ URL, न टेलीमेट्री और न बाहरी इमेज लाइब्रेरी। सीमा 20 MiB और 16 मेगापिक्सेल है।

SVG, GIF, ICO और एनिमेटेड WebP को चलाने या पहले फ़्रेम में बदलने के बजाय अस्वीकार किया जाता है। Auto पारदर्शिता बचाता है; JPEG के लिए पृष्ठभूमि की पुष्टि जरूरी है। Canvas कोई मैलवेयर स्कैन नहीं है।

Base64 कब न इस्तेमाल करें

यह छोटे, स्वयं-समाहित संसाधनों के लिए उपयोगी है। बड़ी इमेज के लिए Blob URL, अलग फ़ाइल या बाइनरी अपलोड कैश और ट्रांसफ़र के लिहाज से बेहतर हैं।

इमेज बाइट और Base64 वर्ण अलग-अलग गिने जाते हैं। data: उपसर्ग हटाने को कंप्रेशन नहीं माना जाता।

आम समस्याएं और उनके कारण

  • Base64 वर्ण, padding या लंबाई अमान्य है।
  • घोषित MIME और वास्तविक magic bytes अलग हैं।
  • इमेज 20 MiB या 16 मेगापिक्सेल से बड़ी है, अथवा ब्राउज़र उसे डिकोड नहीं कर सका।
  • इमेज एनिमेटेड, बहु-फ़्रेम, SVG या पहले से बहुत अनुकूलित है।

समान कमांड

अपने काम में उपलब्ध रनटाइम या शेल का उपयोग करें। अविश्वसनीय इनपुट की जांच करें और बाइनरी आउटपुट सीधे टर्मिनल में न भेजें।

Python

from PIL import Image
from io import BytesIO
import base64
image = Image.open(BytesIO(base64.b64decode(value)))
out = BytesIO(); image.save(out, 'WEBP', quality=82)
result = base64.b64encode(out.getvalue()).decode('ascii')

JavaScript

const blob = new Blob([bytes], { type: mime });
const bitmap = await createImageBitmap(blob);
ctx.drawImage(bitmap, 0, 0, width, height);
const output = await new Promise(r => canvas.toBlob(r, 'image/webp', 0.82));
bitmap.close();

Shell

printf '%s' "$VALUE" | base64 --decode > input.png
magick input.png -resize '1920x1920>' -quality 82 output.webp
base64 --wrap=0 output.webp

मानक और आधिकारिक संदर्भ

Base64 इमेज कंप्रेशन FAQ

क्या Base64 को स्वयं कंप्रेस किया जा सकता है?

सामान्य कंप्रेशन एक अलग बाइनरी फ़ॉर्मेट बनाता है। मानक इमेज Base64 बनाए रखने के लिए इमेज बाइट को अनुकूलित करके फिर एन्कोड करें।

क्या परिणाम सीधे img src में चलेगा?

हाँ। Raw आउटपुट मानक Base64 है और Data URL सामान्य data:image/...;base64 रूप में मिलता है।

इमेज को 100 KB तक कैसे घटाएं?

Custom में 100 KB चुनें। क्वालिटी और आयाम सीमित चरणों में खोजे जाते हैं; हर इमेज लक्ष्य तक नहीं पहुंच सकती।

क्या क्वालिटी घटेगी?

घट सकती है। आकार बदलना और JPEG/WebP की हानिपूर्ण क्वालिटी दृश्य जानकारी बदलते हैं; PNG दोबारा एन्कोड होकर भी छोटा न हो सकता है।

Base64 लगभग 33% बड़ा क्यों होता है?

हर तीन बाइट चार वर्ण बनते हैं। सटीक सूत्र 4 × ceil(n / 3) है।

क्या इमेज अपलोड होती है?

नहीं। जांच, Canvas प्रोसेसिंग, पूर्वावलोकन, कॉपी और डाउनलोड सब ब्राउज़र में स्थानीय रूप से होते हैं।

Gzip Base64 से पहले लगाएं या बाद में?

ट्रांसफ़र के लिए जरूरत हो तो बाहरी HTTP response को संपीड़ित करें। बिना खोलने के Gzip डेटा इमेज Data URL नहीं होता।