ماسٹر بیس 64 فرنٹ اینڈ ڈویلپمنٹ کے لئے

سمجھنے کے لئے ایک جامع رہنما بیس 64 جدید ویب ڈیزائن میں انکوڈنگ ، ضابطہ کشائی اور عملی ایپلی کیشنز۔

کوشش کریں بیس 64 انکوڈنگ/ڈیکوڈنگ

بالکل کیا ہے بیس 64؟

بیس 64 ایک بائنری ٹو ٹیکسٹ انکوڈنگ اسکیم ہے جو بائنری ڈیٹا (جیسے تصاویر ، فائلیں ، یا خام بائٹس) کو ASCII حروف میں تبدیل کرتی ہے۔ اس تبدیلی سے بائنری ڈیٹا کو محفوظ طریقے سے منتقل کرنے اور صرف ٹیکسٹ صرف ڈیٹا کے لئے ڈیزائن کردہ سسٹم میں محفوظ کرنے کی اجازت ملتی ہے-جیسے ای میل پروٹوکول ، ایچ ٹی ایم ایل ، یا API ردعمل۔

"بیس 64" کا نام بائنری اقدار کی نمائندگی کرنے کے لئے 64 الگ الگ حروف (A-Z ، A-Z ، 0-9 ، ‘+’ ، اور ‘/’) کے استعمال سے آیا ہے۔ ہر ایک بیس 64 کریکٹر ڈیٹا کے 6 بٹس کو انکوڈ کرتا ہے ، جس سے یہ ٹیکسٹ سینٹرک ماحول میں بائنری مواد کو سنبھالنے کا ایک موثر طریقہ بنتا ہے۔

خفیہ کاری کے برعکس ، بیس 64 یہ حفاظتی اقدام نہیں ہے - یہ مکمل طور پر ڈیٹا فارمیٹنگ کے لئے ہے۔ کوئی بھی بنیادی ٹولز کے ساتھ بیس 64 مواد کو ڈی کوڈ کرسکتا ہے ، لہذا اسے کبھی بھی حساس معلومات کے تحفظ کے لئے استعمال نہیں کیا جانا چاہئے۔

بیس 64 کریکٹر سیٹ

a
بی
c
ڈی
ای
f
جی
h
میں
جے
k
l
م
n
اے
پی
س
r
s
t
یو
وی
ڈبلیو
ایکس
y
زیڈ
a
بی
c
ڈی
ای
f
جی
h
... تو… کے بارے میں… کے بارے میں… کے.
x
y
زیڈ
0
1
2
3
4
5
6
7
8
9
+
/

* "=" نامکمل اعداد و شمار کے لئے بھرتی کے کردار کے طور پر استعمال ہوتا ہے

کیسے کرتا ہے؟ بیس 64 انکوڈنگ کا کام؟

  1. 1

    بائنری ڈیٹا کو 8 بٹ بائٹس میں تبدیل کریں

    عمل بائنری ڈیٹا (جیسے ، ایک تصویری فائل) سے شروع ہوتا ہے۔ اس اعداد و شمار کو 8 بٹ (1-بائٹ) طبقات میں تقسیم کیا گیا ہے ، جو خام ان پٹ تشکیل دیتے ہیں بیس 64 انکوڈنگ

  2. 2

    24 بٹ ٹکڑوں میں گروپ بائٹس

    چونکہ بیس 64 6 بٹ حروف کا استعمال کرتا ہے ، 8 بٹ بائٹس کو 24 بٹ (3-بائٹ) حصوں میں گروپ کیا جاتا ہے۔ 24 بٹس کو یکساں طور پر چار 6 بٹ حصوں (4 × 6 = 24) میں تقسیم کیا جاسکتا ہے۔

  3. 3

    6 بٹ طبقات کو بیس 64 حروف میں تبدیل کریں

    ہر 6 بٹ طبقہ کو اعشاریہ قدر (0–63) میں تبدیل کیا جاتا ہے۔ اس کے بعد اس قدر کو اسی طرح کے کردار میں نقش کیا جاتا ہے بیس 64 کریکٹر سیٹ (جیسے ، 0 = "A" ، 1 = "B" ،… ، 63 = "/")۔

  4. 4

    نامکمل ٹکڑوں کے لئے بھرتی شامل کریں

    اگر بائنری ڈیٹا کی لمبائی 3 بائٹس میں سے ایک سے زیادہ نہیں ہے تو ، حتمی حصہ نامکمل ہوگا۔ بیس 64 گمشدہ بائٹس (1 "=" 1 گمشدہ بائٹ کے لئے 1 "=" ، 2 گمشدہ بائٹس کے لئے 2 "=") کی نشاندہی کرنے کے لئے "=" بھرنے والے حرف استعمال کرتا ہے۔

بیس 64 انکوڈنگ مثال: متن "ہائے!"

مرحلہ ان پٹ ڈیٹا بائنری نمائندگی بیس 64 آؤٹ پٹ
1. کچی متن "ہائے!"
2. 8 بٹ بائٹس (ASCII) H (72) ، i (105) ،! (33) 01001000 ، 01101001 ، 00100001
3. 24 بٹ حصہ 72 ، 105 ، 33 010010000110100100100001
4. 6 بٹ طبقات میں تقسیم 010010 ، 000110 ، 100100 ، 100001
5. اعشاریہ میں تبدیل 18 ، 6 ، 36 ، 33
6. بیس 64 حروف کا نقشہ "جلد"

فرنٹ اینڈ بیس 64 معاملات استعمال کریں

تصاویر کے لئے ڈیٹا یو آر ایل

چھوٹی تصاویر (جیسے شبیہیں یا اوتار) براہ راست HTML/CSS میں استعمال کرتے ہوئے سرایت کریں بیس 64 ڈیٹا یو آر ایل۔ اس سے HTTP کی درخواستوں کو کم کیا جاتا ہے اور چھوٹے اثاثوں کے لئے صفحہ بوجھ کی رفتار میں بہتری آتی ہے۔

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..." alt="Icon">

API بائنری ڈیٹا ٹرانسمیشن

بائنری ڈیٹا (جیسے فائلوں یا پی ڈی ایف ایس) کو ریسٹ APIs کے ذریعے انکوڈ کرکے منتقل کریں بیس 64. یہ ٹیکسٹ پر مبنی API پے لوڈ (جیسے ، JSON) میں بائنری ڈیٹا بدعنوانی کے معاملات سے گریز کرتا ہے۔

{ "fileData": "JVBERi0xLjQKJeLjz9MNCjYgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0ZpbHRlciAvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeAovRjEgMTAgVGYKMDAwLjEwNS4wMDAuMTAwCjAwMC4yOTkuMDAwLjAwMAo...", "fileName": "report.pdf" }

کوکی اور لوکل اسٹوریج ٹیکسٹ رکاوٹیں

چھوٹے بائنری ڈیٹا کوکیز یا لوکل اسٹوریج (جو صرف متن کی حمایت کرتے ہیں) میں انکوڈنگ کرکے اسٹور کریں بیس 64. مقامی طور پر صارف کی ترجیحات یا چھوٹے اثاثوں کو بچانے کے لئے مفید ہے۔

// Save Base64 data to LocalStorage
localStorage.setItem('userAvatar', 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEA...');

ای میل منسلک انکوڈنگ

زیادہ تر ای میل پروٹوکول (جیسے ایس ایم ٹی پی) صرف ٹیکسٹ ہیں۔ بیس 64 ای میل منسلکات (تصاویر ، دستاویزات) کو انکوڈ کرنے کے لئے استعمال کیا جاتا ہے تاکہ وہ بدعنوانی کے بغیر منتقل ہوسکیں۔

Content-Type: image/jpeg; name="photo.jpg"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="photo.jpg"

/9j/4AAQSkZJRgABAQEAZABkAAD/7QBsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA...

ان لائن ایس وی جی انکوڈنگ

SVG فائلوں کو انکوڈ کریں بیس 64 CSS پس منظر یا HTML صفات میں ان لائن استعمال کے ل .۔ یہ چھوٹے ویکٹر گرافکس کے لئے اثاثہ جات کے انتظام کو آسان بناتا ہے۔

.icon {
  background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZD0iTTEyIDJBMTAgMTAgMCAwIDEgMjIgMTJBMTAgMTAgMCAwIDEgMTIgMjJBMTAgMTAgMCAwIDEgMiAxMkExMCAxMCAwIDAgMSAxMiAyWiIgc3Ryb2tlPSIjMTY1REZGIiBzdHJva2Utd2lkdGg9IjIiLz48L3N2Zz4=');
}

کینوس امیج ایکسپورٹ

HTML5 کینوس API استعمال کرتا ہے بیس 64 تصویر کے اعداد و شمار کے طور پر تیار کردہ مواد کو برآمد کرنے کے لئے (کے ذریعے toDataURL()) اس سے صارف کے ذریعہ تیار کردہ آرٹ ورک یا اسکرین شاٹس کو بچانے کے قابل بناتا ہے۔

// Get Base64 data from Canvas
const canvas = document.getElementById('myCanvas');
const base64Image = canvas.toDataURL('image/png'); // "data:image/png;base64,iVBORw0KGgo..."

فرنٹ اینڈ بیس 64 کوڈ کی مثالیں

بنیادی بیس 64 انکوڈنگ/ڈیکوڈنگ

جاوا اسکرپٹ کا بلٹ ان استعمال کریں btoa() (بائنری ٹو-آسکی) اور atob() (ascii-to بائنری) آسان کے لئے کام کرتا ہے بیس 64 آپریشنز نوٹ: یہ افعال UTF-8 ڈور کے ساتھ کام کرتے ہیں۔

// Encode text to Base64
function encodeToBase64(text) {
  // Encode UTF-8 to avoid issues with special characters
  const utf8Text = unescape(encodeURIComponent(text));
  return btoa(utf8Text);
}

// Decode Base64 to text
function decodeFromBase64(base64String) {
  const utf8Text = atob(base64String);
  return decodeURIComponent(escape(utf8Text));
}

// Example usage
const originalText = "Hello, Base64!";
const encodedText = encodeToBase64(originalText);
const decodedText = decodeFromBase64(encodedText);

console.log("Original:", originalText); // "Hello, Base64!"
console.log("Encoded:", encodedText);   // "SGVsbG8sIEJhc2U2NCE="
console.log("Decoded:", decodedText);   // "Hello, Base64!"

تصویر کو انکوڈ کریں بیس 64

ایک تصویری فائل (فائل ان پٹ کے ذریعے منتخب کردہ) میں تبدیل کریں بیس 64 فائل ریڈر API کا استعمال کرتے ہوئے۔ ان لائنوں کو اپ لوڈ کرنے یا سرایت کرنے سے پہلے تصاویر کا پیش نظارہ کرنے کے لئے مفید ہے۔

// Get elements from DOM
const fileInput = document.getElementById('image-upload');
const previewImage = document.getElementById('image-preview');
const base64Output = document.getElementById('image-base64');

// Handle file selection
fileInput.addEventListener('change', (e) => {
  const file = e.target.files[0];
  if (!file || !file.type.startsWith('image/')) {
    alert('Please select an image file!');
    return;
  }

  // Create FileReader to read the image
  const reader = new FileReader();
  
  // On load, get Base64 data
  reader.onload = (event) => {
    const base64Data = event.target.result;
    
    // Preview the image
    previewImage.src = base64Data;
    previewImage.style.display = 'block';
    
    // Show Base64 data (truncated for readability)
    const truncatedData = base64Data.length > 100 
      ? base64Data.substring(0, 100) + '...' 
      : base64Data;
    base64Output.textContent = truncatedData;
  };
  
  // Read the file as Base64
  reader.readAsDataURL(file);
});

بیس 64 ڈیٹا (چھوٹا):

بیس 64 بلاب (ڈاؤن لوڈ فائل)

تبدیل بیس 64 براؤزر میں ڈاؤن لوڈ کے قابل فائلیں (جیسے ، پی ڈی ایف ایس ، تصاویر) بنانے کے لئے ڈیٹا کو واپس بلب (بائنری بڑی شے) پر واپس کریں۔

// Convert Base64 to Blob
function base64ToBlob(base64Data, contentType = 'application/octet-stream') {
  // Extract Base64 data (remove "data:..." prefix if present)
  const base64WithoutPrefix = base64Data.startsWith('data:')
    ? base64Data.split(',')[1]
    : base64Data;
  
  // Decode Base64 to binary string
  const binaryString = atob(base64WithoutPrefix);
  const byteLength = binaryString.length;
  
  // Convert binary string to Uint8Array
  const uint8Array = new Uint8Array(byteLength);
  for (let i = 0; i < byteLength; i++) {
    uint8Array[i] = binaryString.charCodeAt(i);
  }
  
  // Create and return Blob
  return new Blob([uint8Array], { type: contentType });
}

// Trigger file download from Blob
function downloadBlobAsFile(blob, fileName) {
  // Create temporary URL for Blob
  const url = URL.createObjectURL(blob);
  
  // Create anchor element to trigger download
  const a = document.createElement('a');
  a.href = url;
  a.download = fileName;
  
  // Simulate click to start download
  document.body.appendChild(a);
  a.click();
  
  // Clean up
  document.body.removeChild(a);
  URL.revokeObjectURL(url);
}

// Example: Download Base64 PDF
const base64Pdf = "JVBERi0xLjQKJeLjz9MNCjYgMCBvYmoKPDwvTGVuZ3RoIDMgMCBSL0ZpbHRlciAvRmxhdGVEZWNvZGU+PgpzdHJlYW0KeAovRjEgMTAgVGYKMDAwLjEwNS4wMDAuMTAwCjAwMC4yOTkuMDAwLjAwMAo...";
const pdfBlob = base64ToBlob(base64Pdf, 'application/pdf');
downloadBlobAsFile(pdfBlob, 'report.pdf');

vue.js بیس 64 اجزاء

ایک دوبارہ استعمال کے قابل Vue.js جزو کے لئے بیس 64 انکوڈنگ/ڈیکوڈنگ۔ ریئل ٹائم اپڈیٹس کے لئے وو کے رد عمل کے نظام کے ساتھ مربوط ہوتا ہے۔

<template>
  <div class="base64-converter">
    <h3 class="text-lg font-semibold mb-4">Vue Base64 Converter</h3>
    
    <!-- Input for text -->
    <div class="mb-4">
      <label class="block mb-2 text-sm font-medium">Enter Text:</label>
      <textarea 
        v-model="inputText" 
        class="w-full p-2 border rounded"
        rows="3"
        placeholder="Type text to encode..."
      ></textarea>
      <button 
        @click="encode"
        class="mt-2 px-4 py-1 bg-primary text-white rounded"
      >Encode to Base64</button>
    </div>
    
    <!-- Output for Base64 -->
    <div class="mb-4">
      <label class="block mb-2 text-sm font-medium">Base64 Result:</label>
      <textarea 
        v-model="base64Output" 
        class="w-full p-2 border rounded"
        rows="3"
        readonly
      ></textarea>
      <button 
        @click="decode"
        class="mt-2 px-4 py-1 bg-secondary text-white rounded"
      >Decode to Text</button>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      inputText: '',
      base64Output: ''
    };
  },
  methods: {
    encode() {
      if (!this.inputText) return;
      // Encode UTF-8 text to Base64
      const utf8Text = unescape(encodeURIComponent(this.inputText));
      this.base64Output = btoa(utf8Text);
    },
    decode() {
      if (!this.base64Output) return;
      // Decode Base64 to UTF-8 text
      const utf8Text = atob(this.base64Output);
      this.inputText = decodeURIComponent(escape(utf8Text));
    }
  }
};
</script>

کے بارے میں اکثر سوالات پوچھے جاتے ہیں بیس 64

استعمال شروع کریں بیس 64 آپ کے فرنٹ اینڈ پروجیکٹس میں

چاہے آپ تصاویر کو سرایت کررہے ہو ، APIs کے ذریعہ فائلوں کو منتقل کررہے ہو ، یا صارف کے ذریعہ تیار کردہ مواد کے ساتھ کام کر رہے ہو ، بیس 64 جدید ویب ڈویلپرز کے لئے ایک لازمی ذریعہ ہے۔ ضم کرنے کے لئے مذکورہ بالا کوڈ کی مثالوں کا استعمال کریں بیس 64 اپنے اگلے پروجیکٹ میں انکوڈنگ اور ضابطہ کشائی کرنا۔