Base64 से इमेज
बाईं ओर चित्र चिपकाएँ
Base64 एन्कोडेड डेटा को प्रीव्यू योग्य इमेज में रिस्टोर करें और डाउनलोड करें, PNG/JPG/WebP/GIF/SVG सहित 7+ सामान्य इमेज फॉर्मैट सपोर्ट करता है। Data URL प्रीफ़िक्स को स्वचालित रूप से पहचानता है, ब्राउज़र में सीधे प्रीव्यू करता है, API डीबगिंग और एन्कोडिंग सत्यापन के लिए उपयुक्त।
संबंधित सुझाव
Base64 से इमेज क्या है?
Base64 से इमेज Base64 एन्कोडिंग की रिवर्स प्रक्रिया है: Base64 एन्कोडेड स्ट्रिंग को मूल बाइनरी इमेज डेटा (जैसे PNG / JPG / WebP / GIF / SVG आदि फॉर्मैट) में रिस्टोर करता है, और ब्राउज़र में सीधे प्रीव्यू करता है या लोकल इमेज फ़ाइल के रूप में डाउनलोड करता है। API से रिटर्न हुई इमेज, इनलाइन रिसोर्स (Data URL), मेल अटैचमेंट Base64 आदि सीनेरियो को हैंडल करने के लिए आवश्यक टूल है।
**मूल सिद्धांत:** Base64 बाइनरी डेटा को 64 प्रिंट करने योग्य ASCII कैरेक्टर (A-Z, a-z, 0-9, +, /) में एन्कोड करता है, इमेज में कन्वर्ट करने का मतलब इस ASCII स्ट्रिंग को मूल बाइनरी बाइट स्ट्रीम में रिस्टोर करना है, फिर ब्राउज़र निर्दिष्ट MIME प्रकार (image/png आदि) के अनुसार इमेज पिक्सल के रूप में पार्स करके प्रदर्शित करता है। Data URL (जैसे `data:image/png;base64,iVBORw0KGgo...`) Base64 + MIME प्रीफ़िक्स का कॉम्बिनेशन फॉर्म है, टूल स्वचालित रूप से पहचानकर प्रोसेस करता है।
**विशिष्ट उपयोग परिदृश्य:** ①API डीबगिंग: कई API इमेज कैप्चा, यूज़र अवतार, इलेक्ट्रॉनिक सिग्नेचर रिटर्न करते समय सीधे Base64 स्ट्रिंग रिटर्न करते हैं, फ्रंटएंड को रिस्टोर करके देखना पड़ता है; ②फ्रंटएंड डेवलपमेंट: Data URL में एम्बेड किए गए छोटे आइकन (CSS background-image: url(data:image/png;base64,...)) को टूल में पेस्ट करके वास्तविक प्रभाव देख सकते हैं; ③मेल अटैचमेंट रिस्टोर: MIME Base64 एन्कोडेड अटैचमेंट को डिकोड करके मूल इमेज में सहेज सकते हैं; ④क्रॉलर डेटा: क्रॉल की गई इमेज Base64 को डिकोड करके लोकल फ़ाइल के रूप में सहेज सकते हैं; ⑤OCR प्रीप्रोसेसिंग: डिकोड करने के बाद OCR टूल से इमेज कंटेंट को पहचान सकते हैं।
**समर्थित इमेज फॉर्मैट:** यह टूल ब्राउज़र द्वारा मूल रूप से पहचाने जाने वाले सभी इमेज MIME प्रकारों को सपोर्ट करता है: PNG (image/png), JPG/JPEG (image/jpeg), WebP (image/webp), GIF (image/gif), SVG (image/svg+xml), BMP (image/bmp), AVIF (image/avif), ICO (image/x-icon) आदि। प्रत्येक फॉर्मैट के अलग-अलग कंप्रेशन एल्गोरिदम और उपयोग परिदृश्य हैं: PNG लॉसलेस है जो आइकन और स्क्रीनशॉट के लिए उपयुक्त है, JPG लॉसी है जो फोटो के लिए उपयुक्त है, WebP आधुनिक ब्राउज़र के लिए अनुशंसित है, SVG वेक्टर है जो आइकन और logo के लिए उपयुक्त है।
**डिकोडिंग सुरक्षा:** सभी डिकोडिंग ऑपरेशन ब्राउज़र में JavaScript के माध्यम से पूरे होते हैं (`atob()` + `TextDecoder` या `Blob` API पर आधारित), इमेज बाइनरी डेटा किसी भी सर्वर पर अपलोड नहीं किया जाता है। संवेदनशील जानकारी वाले Base64 स्ट्रिंग (जैसे यूज़र अवतार, आंतरिक स्क्रीनशॉट) निश्चिंत रूप से उपयोग कर सकते हैं, पेज बंद करने के बाद सभी डेटा स्वचालित रूप से साफ़ हो जाता है।
उपयोग के मामले
- API से रिटर्न हुए Base64 इमेज डेटा को प्रीव्यू और डाउनलोड योग्य इमेज फ़ाइल में रिस्टोर करें
- फ्रंटएंड इनलाइन इमेज रिसोर्स (Data URL फॉर्मैट) की एन्कोडिंग सही है या नहीं सत्यापित करें
- इमेज अपलोड API डीबग करते समय Base64 कंटेंट पूर्ण है या नहीं पुष्टि करें
- Base64 इमेज को डिज़ाइन या दस्तावेज़ के लिए लोकल PNG/JPG फ़ाइल के रूप में सहेजें
- मेल अटैचमेंट Base64 एन्कोडिंग को डिकोड करके इमेज में रिस्टोर करें
- क्रॉलर द्वारा क्रॉल की गई इमेज Base64 को रिस्टोर करने के बाद डिस्क में सहेजें
- Data URL डिकोड करके SVG आइकन के वास्तविक रेंडरिंग प्रभाव को सत्यापित करें
- OCR / AI इंटरफ़ेस से रिटर्न हुई Base64 इमेज को लोकल फ़ाइल में रिस्टोर करके देखें
उपयोग कैसे करें
- Base64 एन्कोडेड इमेज डेटा पेस्ट करें (Data URL प्रीफ़िक्स के साथ या बिना सपोर्ट करता है, जैसे data:image/png;base64,iVBORw0KG...)
- टूल स्वचालित रूप से MIME प्रकार का पता लगाकर डिकोड करता है (Data URL में पहचानता है, या कंटेंट हेड के आधार पर स्निफ़ करता है)
- दाईं ओर रियल-टाइम में इमेज प्रीव्यू और फ़ाइल आकार, आयाम जानकारी प्रदर्शित होती है
- 「डाउनलोड」पर क्लिक करके लोकल इमेज फ़ाइल के रूप में सहेजें, या इमेज पर राइट क्लिक करके「इमेज को इस रूप में सहेजें」
- यदि डिकोड विफल हो जाए, तो MIME प्रकार मैन्युअल रूप से निर्दिष्ट कर सकते हैं या Base64 Clean टूल से प्रीप्रोसेस कर सकते हैं
विशेषताएं
- ऑनलाइन इमेज प्रीव्यू: डिकोड करने के बाद सीधे ब्राउज़र में इमेज प्रदर्शित करें, लोकल में डाउनलोड करने की आवश्यकता नहीं
- मल्टी-फॉर्मैट सपोर्ट: PNG / JPG / WebP / GIF / SVG / BMP / AVIF सहित 7+ सामान्य इमेज MIME प्रकार सपोर्ट करता है
- Data URL स्वचालित पहचान: data:image/png;base64, प्रीफ़िक्स को स्वचालित रूप से हटाकर शुद्ध Base64 कंटेंट निकालकर डिकोड करें
- शुद्ध Base64 इनपुट: बिना प्रीफ़िक्स के शुद्ध Base64 स्ट्रिंग सपोर्ट करता है, MIME प्रकार निर्दिष्ट कर सकते हैं
- इमेज फ़ाइल डाउनलोड: डिकोड की गई इमेज को एक क्लिक से लोकल PNG/JPG फ़ाइल के रूप में सहेजना सपोर्ट करता है
- रियल-टाइम कैरेक्टर काउंट: इनपुट कैरेक्टर संख्या, डिकोड के बाद बाइट संख्या रियल-टाइम प्रदर्शित करें, इमेज आकार का मूल्यांकन करने में सुविधा
- एरर डिटेक्शन: डिकोड विफल होने पर विशिष्ट एरर स्थान (अमान्य Base64 कैरेक्टर, लंबाई गलत, MIME मिसमैच) दर्शाता है
- ब्राउज़र लोकल ज़ीरो अपलोड: सभी डिकोडिंग और प्रीव्यू ब्राउज़र में पूरे होते हैं, किसी भी सर्वर से नहीं गुजरते
- पूर्ण रिवर्स कम्पैटिबिलिटी: 「इमेज से Base64」टूल के साथ पेयर करके उपयोग करें, पूर्ण द्वि-दिशात्मक कन्वर्ज़न वर्कफ़्लो बनाएं
कोड उदाहरण
JavaScript: ब्राउज़र नेटिव डिकोड + Blob URL प्रीव्यू
javascriptब्राउज़र नेटिव atob() + TextDecoder + Blob API का उपयोग करके Base64 डिकोड करें और ब्राउज़र में इमेज प्रदर्शित करें।
// Base64 → इमेज (ब्राउज़र नेटिव कार्यान्वयन)
function base64ToImage(base64String, mimeType = 'image/png') {
// 1. Data URL प्रीफ़िक्स हटाएं (यदि है)
const clean = base64String.replace(/^data:image\/\w+;base64,/, '');
// 2. ब्राउज़र नेटिव atob() से बाइनरी स्ट्रिंग में डिकोड करें
const binary = atob(clean);
// 3. Uint8Array में कन्वर्ट करें
const bytes = new Uint8Array(binary.length);
for (let i = 0; i < binary.length; i++) {
bytes[i] = binary.charCodeAt(i);
}
// 4. <img> टैग प्रीव्यू के लिए Blob URL बनाएं
const blob = new Blob([bytes], { type: mimeType });
const url = URL.createObjectURL(blob);
// 5. img.src सेट करके प्रीव्यू करें
const img = document.createElement('img');
img.src = url;
img.onload = () => {
console.log(`इमेज आयाम: ${img.width}x${img.height}`);
console.log(`फ़ाइल आकार: ${bytes.byteLength} bytes`);
};
return { img, url, size: bytes.byteLength };
}
// उपयोग उदाहरण:
const result = base64ToImage('iVBORw0KGgoAAAANSUhEUgAAAAUA...');
document.body.appendChild(result.img);
// Blob URL रिलीज़ करें (मेमोरी लीक से बचने के लिए)
setTimeout(() => URL.revokeObjectURL(result.url), 60000);Python: base64 लाइब्रेरी से डिकोड करके इमेज सहेजें
pythonPython मानक लाइब्रेरी base64 से Base64 डेटा को इमेज बाइनरी स्ट्रीम में डिकोड करें, फिर PIL/Pillow या बिल्ट-इन फ़ाइल ऑपरेशन से सहेजें।
import base64
from pathlib import Path
def base64_to_image(base64_string: str, output_path: str, mime_type: str = 'image/png'):
"""Base64 स्ट्रिंग को डिकोड करके इमेज फ़ाइल के रूप में सहेजें"""
# 1. Data URL प्रीफ़िक्स हटाएं
if base64_string.startswith('data:image'):
# फॉर्मैट: data:image/png;base64,iVBORw0...
header, base64_string = base64_string.split(',', 1)
# header से स्वचालित रूप से MIME निकालें
if 'image/' in header:
mime_type = header.split('data:')[1].split(';')[0]
# 2. डिकोड करें
image_bytes = base64.b64decode(base64_string)
# 3. फ़ाइल में सहेजें
output_file = Path(output_path)
output_file.parent.mkdir(parents=True, exist_ok=True)
output_file.write_bytes(image_bytes)
print(f"✅ सहेजा गया: {output_file}")
print(f" फ़ाइल आकार: {len(image_bytes):,} bytes")
print(f" MIME प्रकार: {mime_type}")
return output_file
# उपयोग उदाहरण:
# 1. API रिस्पांस से प्राप्त Base64 स्ट्रिंग
api_base64_response = "iVBORw0KGgoAAAANSUhEUgAA..."
# 2. डिकोड करके सहेजें
base64_to_image(api_base64_response, 'output/captcha.png')
# 3. वैकल्पिक: PIL से आगे प्रोसेस करें
try:
from PIL import Image
img = Image.open('output/captcha.png')
print(f"इमेज आयाम: {img.size}")
img.save('output/captcha.png', optimize=True)
except ImportError:
print('इमेज प्रोसेस करने के लिए Pillow इंस्टॉल करें: pip install Pillow')Java: java.util.Base64 + ImageIO से इमेज डिकोड करें
javaJava मानक लाइब्रेरी Base64 से इमेज बाइनरी स्ट्रीम डिकोड करें, ImageIO / BufferedImage के साथ इमेज मेटाडेटा प्रोसेस करें।
import java.io.*;
import java.util.Base64;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
public class Base64ToImage {
public static void main(String[] args) throws Exception {
String base64String = "iVBORw0KGgoAAAANSUhEUgAA...";
String mimeType = "image/png";
// 1. Data URL प्रीफ़िक्स हटाएं (यदि है)
if (base64String.startsWith("data:image")) {
int commaIdx = base64String.indexOf(',');
String header = base64String.substring(0, commaIdx);
base64String = base64String.substring(commaIdx + 1);
// header से MIME निकालें
if (header.contains("image/")) {
mimeType = header.substring(header.indexOf("data:") + 5, header.indexOf(";"));
}
}
// 2. Base64 डिकोड करें
byte[] imageBytes = Base64.getDecoder().decode(base64String);
// 3. फ़ाइल में सहेजें
String extension = mimeType.substring("image/".length());
File outputFile = new File("output." + extension);
try (FileOutputStream fos = new FileOutputStream(outputFile)) {
fos.write(imageBytes);
}
System.out.println("✅ सहेजा गया: " + outputFile.getAbsolutePath());
System.out.println(" फ़ाइल आकार: " + imageBytes.length + " bytes");
// 4. (वैकल्पिक) इमेज मेटाडेटा पढ़ें
ByteArrayInputStream bais = new ByteArrayInputStream(imageBytes);
BufferedImage image = ImageIO.read(bais);
if (image != null) {
System.out.println("इमेज आयाम: " + image.getWidth() + "x" + image.getHeight());
}
}
}सामान्य प्रश्न
कौन से इमेज फॉर्मैट सपोर्ट करता है?
PNG, JPG, WebP, GIF, SVG, BMP, AVIF, ICO सहित ब्राउज़र द्वारा मूल रूप से पहचाने जाने वाले सभी इमेज MIME प्रकार सपोर्ट करता है। टूल Data URL में MIME प्रीफ़िक्स या इनपुट विशेषताओं के आधार पर स्वचालित रूप से निर्धारित करता है, इंटरफ़ेस पर MIME प्रकार मैन्युअल रूप से भी निर्दिष्ट कर सकते हैं। सही फॉर्मैट चुनने से ब्राउज़र सही ढंग से डिकोड और प्रदर्शित कर सकता है।
इनपुट में data:image/png;base64 प्रीफ़िक्स होना आवश्यक है?
आवश्यक नहीं। टूल दो फॉर्मैट के इनपुट सपोर्ट करता है: ①शुद्ध Base64 स्ट्रिंग (जैसे iVBORw0KGgoAA...), इंटरफ़ेस पर MIME प्रकार (जैसे PNG / JPG) चुनना होगा; ②Data URL फॉर्मैट (जैसे data:image/png;base64,iVBORw0KGgo...), टूल स्वचालित रूप से प्रीफ़िक्स में MIME प्रकार पहचानकर डिकोड करता है। दोनों इनपुट विधियां सपोर्टेड हैं।
क्या ब्राउज़र में सीधे प्रीव्यू कर सकते हैं?
हाँ। डिकोड की गई इमेज Blob URL के माध्यम से ब्राउज़र में सीधे प्रदर्शित होती है, ऑनलाइन प्रीव्यू सपोर्ट करता है। कंटेंट सही होने की पुष्टि करने के बाद, लोकल फ़ाइल के रूप में डाउनलोड करें या HTML/CSS एम्बेडिंग के लिए Data URL कॉपी करें। पूरी प्रीव्यू प्रक्रिया में नेटवर्क रिक्वेस्ट की आवश्यकता नहीं है।
Base64 से फ़ाइल टूल से क्या अंतर है?
Base64 से इमेज विशेष रूप से इमेज फॉर्मैट के लिए ऑप्टिमाइज़ किया गया है: ①स्वचालित रूप से MIME प्रकार पहचानता है; ②Blob URL के माध्यम से ब्राउज़र में सीधे प्रीव्यू करता है; ③MIME के अनुसार स्वचालित रूप से फ़ाइल एक्सटेंशन (.png / .jpg आदि) सेट करता है; ④इमेज आयाम जानकारी प्रदर्शित करता है। Base64 से फ़ाइल सामान्य टूल है, किसी भी बाइनरी फ़ाइल को रिस्टोर और डाउनलोड करने के लिए उपयुक्त है (जैसे PDF, ZIP, ऑडियो आदि)।
डिकोड करने के बाद इमेज अधूरी दिखाई दे तो क्या करें?
संभावित कारण: ①Base64 स्ट्रिंग कट गई है (लंबाई पूर्ण है या नहीं जांचें); ②MIME प्रकार गलत निर्दिष्ट किया गया है (जैसे PNG डेटा को JPG के रूप में डिकोड किया गया); ③मूल डेटा स्वयं क्षतिग्रस्त है। सुझाव: ①स्रोत Base64 पूर्ण होने की पुष्टि करें; ②विभिन्न MIME प्रकार स्विच करके प्रयास करें; ③Base64 Validate टूल से वैधता जांचें।
Base64 का आकार मूल इमेज से कितना बड़ा होता है?
Base64 एन्कोडिंग से मूल बाइनरी डेटा का आकार लगभग 33% बढ़ जाता है (3 बाइट → 4 कैरेक्टर)। उदाहरण के लिए 100KB PNG एन्कोड करने के बाद लगभग 133KB Base64 स्ट्रिंग हो जाती है। इसलिए Base64 छोटी इमेज (< 10KB) के लिए उपयुक्त है, बड़ी इमेज के लिए HTTP URL से सीधे ट्रांसमिट करना अनुशंसित है।
क्या SVG वेक्टर इमेज सपोर्ट करता है?
हाँ, सपोर्ट करता है। SVG XML पर आधारित वेक्टर इमेज फॉर्मैट है, Base64 एन्कोड करने के बाद HTML <img> या CSS background-image में सीधे एम्बेड किया जा सकता है। डिकोड करने के बाद ब्राउज़र में वेक्टर तरीके से रेंडर होती है, बिना गुणवत्ता खोए स्केल की जा सकती है। ध्यान दें SVG में JavaScript कोड हो सकता है, उपयोग करते समय XSS सुरक्षा पर ध्यान दें।
निर्दिष्ट फॉर्मैट में कैसे सहेजें?
डिकोड करने के बाद डाउनलोड बटन पर क्लिक करें, टूल डिकोड करते समय MIME प्रकार के अनुसार स्वचालित रूप से संबंधित एक्सटेंशन जोड़ता है (image/png → .png, image/jpeg → .jpg)। यदि फॉर्मैट कन्वर्ट करना है (जैसे PNG → JPG), डिकोड करने के बाद अन्य टूल (जैसे Canvas / ImageMagick) से कन्वर्ट करने की सलाह दी जाती है।
डिकोड करने के बाद इमेज खाली या क्षतिग्रस्त है?
सामान्य कारण: ①Base64 में न्यूलाइन या स्पेस हैं जो साफ़ नहीं किए गए हैं——पहले Base64 Clean टूल से प्रीप्रोसेस करें; ②padding (=) गुम है——यह टूल स्वचालित रूप से पूरा करता है; ③MIME प्रकार मूल डेटा से मेल नहीं खाता——स्रोत API से रिटर्न हुए Content-Type की जांच करें या अन्य MIME मैन्युअल रूप से प्रयास करें; ④ट्रांसमिशन के दौरान स्रोत Base64 कट गई है——पूर्ण स्ट्रिंग फिर से प्राप्त करें।
क्या बड़ी इमेज (>10MB) सपोर्ट करता है?
सपोर्ट करता है, लेकिन ब्राउज़र की अत्यधिक बड़ी इमेज के लिए रेंडरिंग परफॉर्मेंस कम हो जाती है। 10MB Base64 (लगभग 7.5MB मूल इमेज) डिकोड करना आमतौर पर स्मूथ है; 50MB से अधिक होने पर मेमोरी वार्निंग आ सकती है। सुझाव: ①पहले base64-clean से व्हाइटस्पेस हटाएं; ②बड़ी इमेज को चंक में डिकोड करें; ③ब्राउज़र में पर्याप्त मेमोरी होने की पुष्टि करें (4GB+ अनुशंसित)।
समस्या निवारण
डिकोड करने के बाद इमेज खाली दिखाई देती है
संभव है MIME प्रकार मेल नहीं खा रहा है या Base64 अधूरा है। जांचें: 1) स्रोत API से रिटर्न हुआ Content-Type हेडर; 2) MIME प्रकार मैन्युअल रूप से स्विच करके पुनः प्रयास करें; 3) Base64 स्ट्रिंग पूर्ण होने की पुष्टि करें (लंबाई अपेक्षित है)।
InvalidCharacterError डिकोड विफल
Base64 स्ट्रिंग में अवैध कैरेक्टर (स्पेस, न्यूलाइन, चीनी आदि) शामिल हैं। पहले Base64 Clean टूल से सभी व्हाइटस्पेस और अवैध कैरेक्टर हटाएं, फिर कन्वर्ट करें।
डाउनलोड की गई इमेज का एक्सटेंशन गलत है
डिकोड करते समय MIME प्रकार मूल इमेज से मेल खाता है या नहीं जांचें। यदि स्रोत API image/jpeg रिटर्न करता है लेकिन Base64 डेटा वास्तव में PNG है, डाउनलोड करने के बाद एक्सटेंशन .jpg होगा लेकिन वास्तव में PNG फॉर्मैट होगा। MIME प्रीफ़िक्स या Content-Type हेडर से मूल फॉर्मैट की पुष्टि करने की सलाह दी जाती है।
बड़ी इमेज डिकोड करते समय ब्राउज़र हैंग हो जाता है
50MB से अधिक की Base64 स्ट्रिंग मेमोरी ओवरफ़्लो का कारण बन सकती है। सुझाव: ①पहले base64-clean टूल से व्हाइटस्पेस कैरेक्टर हटाएं; ②बड़ी इमेज को बैच में डिकोड करें (जैसे टाइल से विभाजित करें); ③ब्राउज़र में पर्याप्त मेमोरी होने की पुष्टि करें (4GB+ उपलब्ध मेमोरी अनुशंसित); ④अत्यधिक बड़ी इमेज के लिए सर्वर-साइड Node.js / Python स्क्रिप्ट का उपयोग करें।
SVG इमेज डिकोड करने के बाद प्रदर्शित नहीं हो सकती
SVG XML पर आधारित वेक्टर फॉर्मैट है, डिकोड करने के बाद सुनिश्चित करना होगा: 1) MIME प्रकार image/svg+xml उपयोग करें; 2) SVG में अनएस्केप्ड विशेष कैरेक्टर नहीं होने चाहिए; 3) कुछ ब्राउज़र SVG में JavaScript कोड पर सुरक्षा प्रतिबंध लगाते हैं। पहले XML पार्सिंग टूल से SVG की वैधता सत्यापित करने की सलाह दी जाती है।
शब्दकोश
- Base64
- बाइनरी डेटा को 64 ASCII कैरेक्टर में दर्शाने की एन्कोडिंग विधि, RFC 4648 में परिभाषित है। इस टूल का रिवर्स: Base64 स्ट्रिंग को मूल इमेज बाइनरी में रिस्टोर करना।
- Data URL
- RFC 2397 में परिभाषित इनलाइन URL फॉर्मैट: data:image/<MIME>;base64,<डेटा>। HTML img src, CSS background-image में सीधे उपयोग किया जा सकता है। यह टूल स्वचालित रूप से पहचानकर प्रीफ़िक्स हटाता है।
- MIME प्रकार
- इंटरनेट मीडिया प्रकार, जैसे image/png, image/jpeg। ब्राउज़र MIME के अनुसार तय करता है कि बाइट स्ट्रीम को इमेज के रूप में कैसे पार्स किया जाए।
- PNG
- लॉसलेस कंप्रेशन बिटमैप फॉर्मैट, अल्फा चैनल सपोर्ट करता है। आइकन, स्क्रीनशॉट, विवरण बनाए रखने वाली इमेज के लिए आमतौर पर उपयोग किया जाता है। Base64 के बाद आकार मूल का लगभग 1.33 गुना हो जाता है।
- JPG/JPEG
- लॉसी कंप्रेशन बिटमैप फॉर्मैट, फोटो के लिए उपयुक्त। कंप्रेशन दर उच्च है लेकिन ट्रांसपेरेंसी सपोर्ट नहीं करता। Base64 के बाद आकार मूल का लगभग 1.33 गुना हो जाता है।
- WebP
- Google द्वारा विकसित आधुनिक इमेज फॉर्मैट, लॉसी/लॉसलेस कंप्रेशन और अल्फा चैनल दोनों सपोर्ट करता है। PNG/JPG से 25-35% छोटा है।
- Blob (Binary Large Object)
- ब्राउज़र नेटिव बाइनरी ऑब्जेक्ट, Base64 डिकोड करने के बाद बाइट स्ट्रीम को इमेज Blob URL में रैप करके प्रीव्यू और डाउनलोड के लिए उपयोग किया जा सकता है।
8 प्रकार के इमेज फॉर्मैट तुलना तालिका
विभिन्न इमेज फॉर्मैट के अलग-अलग कंप्रेशन एल्गोरिदम, विशेषताएं, उपयोग परिदृश्य हैं।
| फॉर्मैट | MIME प्रकार | कंप्रेशन प्रकार | ट्रांसपेरेंसी सपोर्ट | विशिष्ट परिदृश्य |
|---|---|---|---|---|
PNG | image/png | लॉसलेस | ✅ | आइकन / स्क्रीनशॉट / Logo |
JPG | image/jpeg | लॉसी | ❌ | फोटो / लैंडस्केप इमेज |
WebP | image/webp | लॉसी/लॉसलेस | ✅ | आधुनिक Web अनुशंसित |
GIF | image/gif | लॉसलेस (256 रंग) | ✅ (1-bit) | छोटे एनिमेशन / सरल आइकन |
SVG | image/svg+xml | वेक्टर | ✅ | Logo / आइकन / इलस्ट्रेशन |
BMP | image/bmp | कोई नहीं | वैकल्पिक | Windows सिस्टम इमेज |
AVIF | image/avif | लॉसी/लॉसलेस | ✅ | अगली पीढ़ी का इमेज फॉर्मैट |
ICO | image/x-icon | लॉसलेस | ✅ | वेबसाइट favicon |
Data URL बनाम HTTP URL इमेज लोडिंग तुलना
डिकोड की गई इमेज को Data URL के रूप में HTML/CSS में सीधे एम्बेड किया जा सकता है, पारंपरिक HTTP URL से तुलना।
| आयाम | Data URL | HTTP URL |
|---|---|---|
| HTTP रिक्वेस्ट संख्या | 0 | 1 बार |
| कैश रीयूज | कठिन | आसान (CDN / ब्राउज़र) |
| आकार | मूल इमेज + 33% | मूल इमेज आकार |
| उपयुक्त आकार | < 10 KB | किसी भी आकार |
| कंप्रेस्ड ट्रांसमिशन | नहीं (पहले से एन्कोडेड) | gzip / Brotli |
| CSP प्रतिबंध | संभव | आमतौर पर अनुमति |
| सर्वर स्टोरेज | आवश्यक नहीं | आवश्यक |
| ऑफ़लाइन एक्सेस | ✅ (फ़ाइल स्तर) | ❌ (कैश आवश्यक) |
5 प्रकार की Base64 से इमेज सामान्य एरर तुलना तालिका
डिकोड एरर आने पर निम्न तालिका के अनुसार जल्दी से समस्या का पता लगाएं।
| एरर घटना | संभावित कारण | समाधान विधि |
|---|---|---|
| डिकोड विफल: InvalidCharacterError | स्पेस, न्यूलाइन, गैर-Base64 कैरेक्टर शामिल हैं | Base64 Clean टूल से प्रीप्रोसेस करें |
| इमेज खाली दिखाई देती है | MIME प्रकार मूल डेटा से मेल नहीं खाता | सही MIME स्विच करें (जैसे PNG डेटा के लिए image/png) |
| इमेज अधूरी दिखाई देती है | Base64 स्ट्रिंग कट गई है | पूर्ण Base64 स्ट्रिंग फिर से प्राप्त करें |
| Padding एरर | URL-safe Base64 में padding छोड़ा गया है | Base64 Padding टूल से = पूरा करें |
| ब्राउज़र मेमोरी ओवरफ़्लो | इमेज बहुत बड़ी है (> 50MB) | चंक में डिकोड करें या इमेज कंप्रेशन टूल का उपयोग करें |
Authoritative References
- सेफ स्ट्रिंग कंपैरिजन
- बाइनरी रूपांतरण
- सीज़र सिफर
- मोर्स कोड
- हेक्साडेसिमल
- Base64 to Video
- इमेज से Base64
- Base64 से इमेज
- टेक्स्ट से Base64
- Base64 से टेक्स्ट
- फ़ाइल हैश जाँचकर्ता
- फ़ाइल से Base64
- Base64 से फ़ाइल
- ऑडियो को Base64 में बदलें
- Base64 से ऑडियो
- AES एन्क्रिप्ट और डिक्रिप्ट
- DES एन्क्रिप्शन डिक्रिप्शन
- Base32 एन्कोडर डिकोडर
- Base58 एन्कोडिंग और डिकोडिंग
- Base64 एन्कोड
- Base64 डिकोड
- Base64 तुलनाकर्ता
- Base64 स्प्लिट
- Base64 बहु-पंक्ति विलय
- Base64 फ़ॉर्मेटिंग
- Base64 फ़ॉर्मेट वैलिडेशन
- Base64 बैच एन्कोडिंग
- Base64 बैच डिकोड
- Base64 क्लीनर
- Base64 पैडिंग टूल
- Base64 लंबई स्टैटिस्टिक्स
- Base64 से Hex
- Base64 DataURL कन्वर्टर
- Base64-Hex कनवर्टर
- Base85 कोडेक
- HMAC जनरेशन और वेरिफिकेशन
- PBKDF2 की डेरिवेशन
- MD5 हैश
- SHA-256 हैश
- SHA1 हैश
- SHA512 हैश
- JWT टूल
- HTML एन्टिटी एन्कोड और डिकोड
- Unicode एस्केप
- URL एन्कोडिंग
- Base64 URL Safe
- MIME Base64
- जावा ऑबफस्केशन
- JS ऑब्फस्केट
- PHP ऑब्फस्केट
- Python ऑब्फस्केट
- वीडियो से Base64 कनवर्टर