बेस64 इमेज डिकोडर आणि व्ह्यूअर | बेस64 ते इमेजमध्ये रूपांतरित करा
बेस64-कोडेड इमेज स्ट्रिंग्ज त्वरित डिकोड आणि पूर्वावलोकन करा. चुकीच्या इनपुटसाठी त्रुटी हाताळणीसह JPEG, PNG, GIF आणि इतर सामान्य स्वरूपांचे समर्थन करते.
बेस64 इमेज डिकोडर आणि व्ह्यूअर
एक बेस64-कोड केलेली इमेज स्ट्रिंग पेस्ट करा आणि इमेज पाहण्यासाठी डिकोड करा.
इमेज पूर्वावलोकन
दिसवण्यासाठी कोणतीही इमेज नाही. ती ऑटोमॅटिकली डिकोड करण्यासाठी एक बेस64 स्ट्रिंग पेस्ट करा.
JPEG, PNG, GIF आणि इतर सामान्य इमेज फॉरमॅट्सना समर्थन.
सूचना
1. वरील टेक्स्ट क्षेत्रात एक बेस64-कोड केलेली इमेज स्ट्रिंग पेस्ट करा.
2. तुम्ही टाईप करत असताना इमेज ऑटोमॅटिकली डिकोड होईल, किंवा 'इमेज डिकोड करा' बटणावर क्लिक करा.
3. डिकोड केलेली इमेज खालील पूर्वावलोकन क्षेत्रात दिसेल.
नोट: सर्वोत्तम परिणामांसाठी स्ट्रिंग 'data:image/' ने सुरू होणे आवश्यक आहे, परंतु हे टूल या प्रीफिक्सशिवाय स्ट्रिंग्स डिकोड करण्याचा प्रयत्न करेल.
दस्तऐवजीकरण
बेस64 इमेज डिकोडर आणि व्ह्यूअर
परिचय
बेस64 एक बायनरी-टू-टेक्स्ट एन्कोडिंग योजना आहे जी बायनरी डेटा ASCII स्ट्रिंग फॉरमॅटमध्ये दर्शवते. हे सामान्यतः HTML, CSS, JavaScript, JSON आणि इतर टेक्स्ट-आधारित फॉरमॅट्समध्ये इमेज डेटा थेट समाविष्ट करण्यासाठी वापरले जाते जिथे बायनरी डेटा थेट समाविष्ट केला जाऊ शकत नाही. हे साधन तुम्हाला बेस64-एन्कोडेड इमेज स्ट्रिंग्स डिकोड करण्याची आणि परिणामी इमेजेस थेट तुमच्या ब्राउझरमध्ये पाहण्याची परवानगी देते.
बेस64 एन्कोडिंग मूळ बायनरीच्या तुलनेत डेटा आकार सुमारे 33% वाढवते, परंतु हे इमेजेसना टेक्स्ट-आधारित दस्तऐवजात थेट समाविष्ट करण्यास सक्षम करते ज्यामुळे वेगळ्या फाइल डाउनलोडची आवश्यकता नाही. हे लहान इमेजेस जसे की आयकन्स, लोगो किंवा साध्या ग्राफिक्ससाठी विशेषतः उपयुक्त असू शकते जिथे समावेशाची सोय आकार वाढण्यापेक्षा अधिक आहे.
आमचे बेस64 इमेज डिकोडर साधन एक साधी इंटरफेस प्रदान करते जिथे तुम्ही एक बेस64-एन्कोडेड इमेज स्ट्रिंग पेस्ट करू शकता आणि त्वरित डिकोड केलेली इमेज पाहू शकता. हे सर्व सामान्य इमेज फॉरमॅट्सना समर्थन देते ज्यामध्ये JPEG, PNG, GIF, WebP, आणि SVG समाविष्ट आहेत, आणि डेटा URL फॉरमॅट (सह data:image/...
प्रीफिक्स) आणि कच्च्या बेस64 स्ट्रिंग्स दोन्ही हाताळू शकते.
तांत्रिक तपशील
बेस64 एन्कोडिंग फॉरमॅट
बेस64 एन्कोडिंग बायनरी डेटा 64 ASCII वर्णांमध्ये (A-Z, a-z, 0-9, +, आणि /) रूपांतरित करते, ज्यामध्ये = पॅडिंगसाठी वापरले जाते. वेबवरील इमेजेससाठी, बेस64 डेटा सामान्यतः डेटा URL स्वरूपात खालील संरचनेनुसार फॉरमॅट केले जाते:
1data:[<media type>][;base64],<data>
2
उदाहरणार्थ, एक बेस64-एन्कोडेड PNG इमेज असे दिसू शकते:
1data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==
2
या स्वरूपाचे घटक आहेत:
data:
- URL योजनाimage/png
- डेटाचे MIME प्रकार;base64
- एन्कोडिंग पद्धत,
- हेडर आणि डेटा यामध्ये एक विभाजक- वास्तविक बेस64-एन्कोडेड डेटा
डिकोडिंग प्रक्रिया
बेस64 इमेज स्ट्रिंग डिकोड करताना, खालील चरण घडतात:
- स्ट्रिंगचे विश्लेषण केले जाते जेणेकरून ते डेटा URL प्रीफिक्स समाविष्ट करते की नाही हे ओळखता येईल
- जर प्रीफिक्स अस्तित्वात असेल, तर इमेज फॉरमॅट ठरवण्यासाठी MIME प्रकार काढला जातो
- बेस64 डेटा भाग वेगळा केला जातो आणि बायनरी डेटामध्ये डिकोड केला जातो
- बायनरी डेटाला Blob किंवा ऑब्जेक्ट URL मध्ये रूपांतरित केले जाते जे इमेज म्हणून प्रदर्शित केले जाऊ शकते
जर इनपुटमध्ये डेटा URL प्रीफिक्स समाविष्ट नसेल, तर डिकोडर त्यास कच्च्या बेस64 डेटासारखे हाताळण्याचा प्रयत्न करतो आणि डिकोड केलेल्या बायनरी हेडरवरून इमेज प्रकार गृहीत धरतो किंवा PNG वर डिफॉल्ट करतो.
समर्थित इमेज फॉरमॅट्स
हे साधन सर्व सामान्य वेब इमेज फॉरमॅट्सना समर्थन देते:
फॉरमॅट | MIME प्रकार | सामान्य वापर प्रकरणे |
---|---|---|
JPEG | image/jpeg | फोटो, अनेक रंग असलेल्या जटिल इमेजेस |
PNG | image/png | पारदर्शकता आवश्यक असलेल्या इमेजेस, स्क्रीनशॉट, ग्राफिक्स |
GIF | image/gif | साधी अॅनिमेशन्स, मर्यादित रंगाची इमेजेस |
WebP | image/webp | JPEG/PNG पेक्षा चांगली संकुचन देणारा आधुनिक फॉरमॅट |
SVG | image/svg+xml | व्हेक्टर ग्राफिक्स, स्केलेबल आयकन्स आणि चित्रण |
वापर प्रकरणे
बेस64-एन्कोडेड इमेजेसमध्ये वेब विकास आणि त्यापेक्षा जास्त काही व्यावहारिक अनुप्रयोग आहेत:
-
HTML/CSS/JS मध्ये इमेजेस समाविष्ट करणे: लहान इमेजेससाठी तुमच्या कोडमध्ये थेट समाविष्ट करून HTTP विनंत्या कमी करणे, जे पृष्ठ लोड वेळा सुधारू शकते.
-
ईमेल टेम्पलेट्स: बाह्य इमेजेस ब्लॉक करणाऱ्या ईमेल क्लायंटमध्ये इमेजेस योग्यरित्या प्रदर्शित होतात याची खात्री करणे.
-
सिंगल-फाइल अनुप्रयोग: सर्व संसाधनांचा समावेश असलेल्या एकाच फाइलमध्ये आत्मनिहित HTML अनुप्रयोग तयार करणे.
-
API प्रतिसाद: इमेज डेटा थेट JSON प्रतिसादांमध्ये समाविष्ट करणे ज्यामुळे स्वतंत्र इमेज एंडपॉइंट्सची आवश्यकता नाही.
-
CSS मध्ये डेटा URIs: लहान आयकन्स आणि पार्श्वभूमी इमेजेस थेट CSS फाइलमध्ये समाविष्ट करणे.
-
कॅनव्हास मॅनिप्युलेशन्स: कॅनव्हास इमेज डेटा जतन करणे आणि हस्तांतरित करणे सुलभ करणे.
-
ऑफलाइन अनुप्रयोग: स्थानिक स्टोरेज किंवा IndexedDB मध्ये इमेजेस टेक्स्ट स्ट्रिंग्स म्हणून संग्रहित करणे.
कार्यक्षमता विचार
बेस64 एन्कोडिंग सोयीसाठी उपलब्ध असले तरी, त्यास काही व्यापार-ऑफसह येते:
- फाईल आकार वाढवणे: बेस64 एन्कोडिंग डेटा आकार सुमारे 33% वाढवते.
- ब्राउझर कॅशिंग नाही: समाविष्ट केलेल्या इमेजेस बाह्य इमेज फाइल्सप्रमाणे स्वतंत्रपणे कॅश केले जाऊ शकत नाहीत.
- पार्सिंग ओव्हरहेड: ब्राउझरला रेंडर करण्यापूर्वी बेस64 स्ट्रिंग डिकोड करणे आवश्यक आहे.
- देखभाल आव्हाने: समाविष्ट केलेल्या इमेजेस अद्यतन करणे संदर्भित फाइल्सपेक्षा कठीण आहे.
सर्वात चांगल्या कार्यक्षमतेसाठी, बेस64 एन्कोडिंग सामान्यतः लहान इमेजेस (10KB पेक्षा कमी) साठी शिफारस केले जाते. मोठ्या इमेजेससाठी वेगळ्या फाइल्स म्हणून सेवा देणे अधिक चांगले असते जे योग्यरित्या कॅश केले जाऊ शकतात आणि ऑप्टिमाइझ केले जाऊ शकतात.
पर्याय
बेस64 एन्कोडिंगसाठी विविध पर्याय उपलब्ध आहेत:
-
SVG इनलाइन एम्बेडिंग: व्हेक्टर ग्राफिक्ससाठी, इनलाइन SVG सामान्यतः बेस64-एन्कोडेड SVG पेक्षा चांगली कार्यक्षमता आणि लवचिकता प्रदान करते.
-
WebP आणि आधुनिक इमेज फॉरमॅट्स: हे बेस64-एन्कोडेड JPEG/PNG पेक्षा चांगले संकुचन प्रदान करतात.
-
इमेज स्प्राईट्स: अनेक लहान इमेजेस एकाच फाइलमध्ये एकत्र करून CSS स्थानक वापरणे.
-
CDNs (कंटेंट डिलिव्हरी नेटवर्क्स): उत्पादन साइटसाठी, ऑप्टिमाइझ केलेल्या इमेजेस CDN कडून सेवा देणे सामान्यतः अधिक कार्यक्षम असते.
-
डेटा संकुचन: मोठ्या प्रमाणात बायनरी डेटा हस्तांतरित करण्यासाठी, gzip किंवा Brotli सारख्या विशेष संकुचन अल्गोरिदम्स बेस64 पेक्षा अधिक कार्यक्षम आहेत.
कोड उदाहरणे
येथे विविध प्रोग्रामिंग भाषांमध्ये बेस64-एन्कोडेड इमेजेससह कार्य करण्याचे उदाहरणे आहेत:
1// JavaScript मध्ये इमेजला बेस64 मध्ये रूपांतरित करणे (ब्राउझर)
2function imageToBase64(imgElement) {
3 const canvas = document.createElement('canvas');
4 canvas.width = imgElement.width;
5 canvas.height = imgElement.height;
6
7 const ctx = canvas.getContext('2d');
8 ctx.drawImage(imgElement, 0, 0);
9
10 // डेटा URL (बेस64 स्ट्रिंग) म्हणून मिळवा
11 return canvas.toDataURL('image/png');
12}
13
14// बेस64 इमेज प्रदर्शित करणे
15function displayBase64Image(base64String) {
16 const img = new Image();
17
18 // डेटा URL प्रीफिक्स न समाविष्ट असलेल्या स्ट्रिंग्स हाताळा
19 if (!base64String.startsWith('data:')) {
20 base64String = `data:image/png;base64,${base64String}`;
21 }
22
23 img.src = base64String;
24 document.body.appendChild(img);
25}
26
1import base64
2from PIL import Image
3from io import BytesIO
4
5# इमेज फाइलला बेस64 मध्ये रूपांतरित करणे
6def image_to_base64(image_path):
7 with open(image_path, "rb") as image_file:
8 encoded_string = base64.b64encode(image_file.read())
9 return encoded_string.decode('utf-8')
10
11# बेस64 ला इमेजमध्ये रूपांतरित करणे आणि जतन करणे
12def base64_to_image(base64_string, output_path):
13 # डेटा URL प्रीफिक्स काढा
14 if ',' in base64_string:
15 base64_string = base64_string.split(',')[1]
16
17 image_data = base64.b64decode(base64_string)
18 image = Image.open(BytesIO(image_data))
19 image.save(output_path)
20
21# उदाहरण वापर
22base64_str = image_to_base64("input.jpg")
23print(f"data:image/jpeg;base64,{base64_str[:30]}...") # स्ट्रिंगचा प्रारंभ प्रिंट करा
24
25base64_to_image(base64_str, "output.jpg")
26
1<?php
2// PHP मध्ये इमेज फाइलला बेस64 मध्ये रूपांतरित करणे
3function imageToBase64($path) {
4 $type = pathinfo($path, PATHINFO_EXTENSION);
5 $data = file_get_contents($path);
6 return 'data:image/' . $type . ';base64,' . base64_encode($data);
7}
8
9// बेस64 ला इमेजमध्ये रूपांतरित करणे आणि जतन करणे
10function base64ToImage($base64String, $outputPath) {
11 // बेस64 एन्कोडेड बायनरी डेटाची काढणी
12 $imageData = explode(',', $base64String);
13 $imageData = isset($imageData[1]) ? $imageData[1] : $imageData[0];
14
15 // डिकोड करा आणि जतन करा
16 $data = base64_decode($imageData);
17 file_put_contents($outputPath, $data);
18}
19
20// उदाहरण वापर
21$base64Image = imageToBase64('input.jpg');
22echo substr($base64Image, 0, 50) . "...\n"; // स्ट्रिंगचा प्रारंभ प्रिंट करा
23
24base64ToImage($base64Image, 'output.jpg');
25?>
26
1import java.io.File;
2import java.io.FileOutputStream;
3import java.io.IOException;
4import java.nio.file.Files;
5import java.util.Base64;
6
7public class Base64ImageUtil {
8
9 // इमेज फाइलला बेस64 मध्ये रूपांतरित करणे
10 public static String imageToBase64(String imagePath) throws IOException {
11 File file = new File(imagePath);
12 byte[] fileContent = Files.readAllBytes(file.toPath());
13 String extension = imagePath.substring(imagePath.lastIndexOf(".") + 1);
14 String base64String = Base64.getEncoder().encodeToString(fileContent);
15
16 return "data:image/" + extension + ";base64," + base64String;
17 }
18
19 // बेस64 ला इमेजमध्ये रूपांतरित करणे आणि जतन करणे
20 public static void base64ToImage(String base64String, String outputPath) throws IOException {
21 // डेटा URL प्रीफिक्स काढा
22 if (base64String.contains(",")) {
23 base64String = base64String.split(",")[1];
24 }
25
26 byte[] decodedBytes = Base64.getDecoder().decode(base64String);
27
28 try (FileOutputStream fos = new FileOutputStream(outputPath)) {
29 fos.write(decodedBytes);
30 }
31 }
32
33 public static void main(String[] args) throws IOException {
34 String base64Image = imageToBase64("input.jpg");
35 System.out.println(base64Image.substring(0, 50) + "..."); // स्ट्रिंगचा प्रारंभ प्रिंट करा
36
37 base64ToImage(base64Image, "output.jpg");
38 }
39}
40
1using System;
2using System.IO;
3using System.Text.RegularExpressions;
4
5class Base64ImageConverter
6{
7 // इमेज फाइलला बेस64 मध्ये रूपांतरित करणे
8 public static string ImageToBase64(string imagePath)
9 {
10 byte[] imageBytes = File.ReadAllBytes(imagePath);
11 string base64String = Convert.ToBase64String(imageBytes);
12
13 string extension = Path.GetExtension(imagePath).TrimStart('.').ToLower();
14 return $"data:image/{extension};base64,{base64String}";
15 }
16
17 // बेस64 ला इमेजमध्ये रूपांतरित करणे आणि जतन करणे
18 public static void Base64ToImage(string base64String, string outputPath)
19 {
20 // डेटा URL प्रीफिक्स काढा
21 if (base64String.Contains(","))
22 {
23 base64String = base64String.Split(',')[1];
24 }
25
26 byte[] imageBytes = Convert.FromBase64String(base64String);
27 File.WriteAllBytes(outputPath, imageBytes);
28 }
29
30 static void Main()
31 {
32 string base64Image = ImageToBase64("input.jpg");
33 Console.WriteLine(base64Image.Substring(0, 50) + "..."); // स्ट्रिंगचा प्रारंभ प्रिंट करा
34
35 Base64ToImage(base64Image, "output.jpg");
36 }
37}
38
1require 'base64'
2
3# इमेज फाइलला बेस64 मध्ये रूपांतरित करणे
4def image_to_base64(image_path)
5 extension = File.extname(image_path).delete('.')
6 base64_data = Base64.strict_encode64(File.read(image_path))
7 "data:image/#{extension};base64,#{base64_data}"
8end
9
10# बेस64 ला इमेजमध्ये रूपांतरित करणे आणि जतन करणे
11def base64_to_image(base64_string, output_path)
12 # डेटा URL प्रीफिक्स काढा
13 if base64_string.include?(',')
14 base64_string = base64_string.split(',')[1]
15 end
16
17 File.open(output_path, 'wb') do |file|
18 file.write(Base64.decode64(base64_string))
19 end
20end
21
22# उदाहरण वापर
23base64_image = image_to_base64('input.jpg')
24puts base64_image[0, 50] + '...' # स्ट्रिंगचा प्रारंभ प्रिंट करा
25
26base64_to_image(base64_image, 'output.jpg')
27
1' Excel VBA फंक्शन फाइलला बेस64 मध्ये एन्कोड करण्यासाठी
2Function FileToBase64(filePath As String) As String
3 Dim fileNum As Integer
4 Dim fileData() As Byte
5 Dim objXML As Object
6 Dim objNode As Object
7
8 fileNum = FreeFile
9 Open filePath For Binary Access Read As fileNum
10 ReDim fileData(LOF(fileNum) - 1)
11 Get fileNum, , fileData
12 Close fileNum
13
14 Set objXML = CreateObject("MSXML2.DOMDocument")
15 Set objNode = objXML.createElement("b64")
16
17 objNode.DataType = "bin.base64"
18 objNode.nodeTypedValue = fileData
19
20 FileToBase64 = objNode.Text
21
22 Set objNode = Nothing
23 Set objXML = Nothing
24End Function
25
26' Excel मध्ये वापर:
27' =FileToBase64("C:\path\to\image.jpg")
28
HTML कार्यान्वयन
येथे HTML मध्ये थेट बेस64 इमेज समाविष्ट करण्याचा मार्ग आहे:
1<!-- HTML मध्ये थेट बेस64 इमेज समाविष्ट करणे -->
2<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="बेस64 एन्कोडेड इमेज">
3
4<!-- बेस64 पार्श्वभूमी इमेजसह CSS वापरणे -->
5<style>
6.base64-bg {
7 background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==');
8 width: 100px;
9 height: 100px;
10}
11</style>
12<div class="base64-bg"></div>
13
इतिहास
बेस64 एन्कोडिंगचा उगम 1970 च्या दशकात इलेक्ट्रॉनिक मेल प्रणालींच्या विकासात आहे. हे फक्त ASCII टेक्स्ट हाताळण्यासाठी डिझाइन केलेल्या प्रणालींमधून बायनरी डेटा प्रसारित करण्याचा समस्या सोडवण्यासाठी तयार केले गेले.
एन्कोडिंग योजना 1987 मध्ये RFC 989 च्या प्रकाशनासह औपचारिक केली गेली, ज्याने प्रायव्हसी एनहन्स्ड मेल (PEM) मानकाची व्याख्या केली. हे नंतर RFC 1421 आणि इतर संबंधित मानकांमध्ये अद्यतनित केले गेले. "बेस64" हा शब्द स्वतः 64 वेगवेगळ्या ASCII वर्णांचा वापर करून बायनरी डेटाचे प्रतिनिधित्व करण्यासाठी वापरला जातो.
वेब विकासाच्या संदर्भात, बेस64 एन्कोडेड इमेजेस डेटा URIs च्या उदयासह लोकप्रियता मिळाली, ज्याला 1998 मध्ये RFC 2397 मध्ये प्रथम प्रस्तावित केले गेले. यामुळे बायनरी डेटा थेट HTML, CSS, आणि इतर वेब दस्तऐवजात समाविष्ट केला जाऊ शकला.
2000 च्या दशकाच्या मध्यात वेब विकासामध्ये बेस64-एन्कोडेड इमेजेसचा वापर अधिक व्यापक झाला कारण विकासकांनी HTTP विनंत्या कमी करण्याचे मार्ग शोधले आणि पृष्ठ लोड वेळा सुधारित केल्या. या तंत्राने विशेषतः मोबाइल वेब विकासाच्या वाढीसह स्वीकारले गेले, जिथे कमी विनंत्या करणे कमी वेगवान मोबाइल कनेक्शनवर कार्यक्षमतेसाठी महत्त्वाचे होते.
आज, बेस64 एन्कोडिंग वेब विकासामध्ये एक महत्त्वाचे साधन राहते, तरीही त्याचा वापर अधिक लक्ष केंद्रित केलेला आहे कारण सर्वोत्तम पद्धती विकसित झाल्या आहेत. आधुनिक दृष्टिकोन सहसा लहान, महत्त्वाच्या इमेजेससाठी बेस64 एन्कोडिंगचा वापर करतो, तर मोठ्या मालमत्तांसाठी अधिक कार्यक्षम वितरण पद्धतींचा लाभ घेतो.
संदर्भ
प्रतिसाद
या साधनाबद्दल प्रतिसाद देण्यासाठी प्रतिसाद टॉस्टवर क्लिक करा
संबंधित साधने
तुमच्या कार्यप्रवाहासाठी उपयुक्त असलेल्या अधिक साधनांचा शोध घ्या