تبدیل تصویر به Base64

تبدیل تصویر به Base64 و دریافت data URI، تگ HTML <img> یا کد CSS؛ یا تبدیل Base64 به تصویر. رایگان و بدون آپلود.

به‌روزرسانی: ۲۰ مهر ۱۴۰۵ ه‍.ش. نوشته‌ی

اجرا در مرورگر شما رایگان · بدون ثبت‌نام

در حال بارگذاری ابزار…

راهنمای استفاده از تبدیل تصویر به Base64

  1. یک تصویر (JPG، PNG، WebP، GIF یا SVG) را در کادر بکشید.
  2. نوع خروجی را انتخاب کنید: data URI، فقط Base64، تگ HTML <img>، پس‌زمینه‌ی CSS یا Markdown.
  3. کد را کپی کنید؛ یا Base64 را پایین بچسبانید تا به شکل تصویر ببینید و دانلود کنید.

درباره‌ی این ابزار

قرار دادن آیکون‌ها و لوگوهای کوچک مستقیم در HTML، CSS یا JSON یک درخواست اضافه را حذف می‌کند. تصویر را بکشید تا کد Base64 آن را در قالب دلخواه بگیرید، یا داده‌ی Base64 را بچسبانید تا تصویرش را ببینید و دانلود کنید.

  • خصوصی: داده‌های شما روی دستگاه خودتان پردازش می‌شود و هرگز آپلود نمی‌شود.
  • رایگان، بدون حساب کاربری، بدون محدودیت و بدون واترمارک.
  • سریع: نتیجه فوراً نمایش داده می‌شود؛ پس از بارگذاری صفحه حتی بدون اینترنت.

این ابزار چه کاری انجام می‌دهد

این ابزار تصویر را به متن Base64 تبدیل می‌کند و کد را در قالبی که لازم دارید تحویل می‌دهد: یک data URI کامل (data:image/png;base64,…)، رشته‌ی Base64 خالص، تگ آماده‌ی HTML <img>، قاعده‌ی CSS background-image یا Markdown. با فایل‌های JPG، PNG، WebP، GIF، BMP و SVG کار می‌کند و حجم اصلی و حجم رمزگذاری‌شده را نشان می‌دهد تا ببینید جاسازی تصویر چقدر هزینه دارد.

برعکس هم کار می‌کند. داده‌ی Base64 یا یک data URI را بچسبانید (مثلاً از پاسخ JSON، سورس یک ایمیل یا یک فایل CSS) تا ابزار تصویر درون آن را نشان دهد، نوعش را تشخیص دهد و امکان دانلود آن را به شکل یک فایل معمولی بدهد.

همه‌چیز به‌صورت محلی در مرورگر شما اجرا می‌شود. نه تصویرها و نه داده‌های Base64 شما به سرور فرستاده نمی‌شوند.

چه زمانی به کار می‌آید

  • آیکون‌های کوچک در CSS و HTML

    آیکون‌های ریز، انیمیشن‌های بارگذاری یا لوگوها را مستقیم در فایل CSS یا صفحه جاسازی کنید تا یک درخواست HTTP کمتر شود.

  • امضای ایمیل و خبرنامه

    برخی ابزارهای ایمیل به‌جای فایل لینک‌شده، تصویر جاسازی‌شده به شکل data URI لازم دارند.

  • API و JSON

    بسیاری از APIها تصویر را به شکل رشته‌ی Base64 می‌فرستند و دریافت می‌کنند. داده‌ی آزمایشی بسازید یا ببینید یک API چه چیزی برگردانده است.

  • اسناد تک‌فایلی

    گزارش‌های HTML مستقل، دموها یا صفحه‌های آفلاینی بسازید که تصویرهایشان را در خود دارند.

نکته‌هایی برای بهترین نتیجه

  • از Base64 فقط برای تصویرهای کوچک استفاده کنید. برای فایل‌های بیش از حدود ۱۰ کیلوبایت، فایل تصویری معمولی معمولاً سریع‌تر است، چون مرورگر می‌تواند آن را جداگانه کش کند.
  • پیش از تبدیل، حجم عکس را کم کنید؛ هر کیلوبایتی که صرفه‌جویی شود، ۱٫۳۳ کیلوبایت از متن Base64 را هم کم می‌کند.
  • آیکون‌های SVG را اغلب می‌توان به شکل SVG با رمزگذاری URL حتی فشرده‌تر جاسازی کرد، اما Base64 همه‌جا کار می‌کند.
  • اگر رمزگشایی ناموفق بود، مطمئن شوید رشته را کامل، تا انتهایش، و بدون هیچ چیز اضافه‌ای کپی کرده‌اید.

تبدیل تصویر به Base64 چطور کار می‌کند

فایل تصویر با FileReader API مرورگر خوانده می‌شود که یک data URI تولید می‌کند: نوع MIME فایل و پس از آن بایت‌های فایل به‌صورت رمزگذاری‌شده در Base64. قالب‌های دیگر از همین رشته ساخته می‌شوند.

برای رمزگشایی، ابزار پیشوند data URI را در صورت وجود حذف می‌کند، فاصله‌های خالی را پاک می‌کند، Base64 مخصوص URL (URL-safe) را می‌پذیرد و padding جاافتاده را اضافه می‌کند. سپس بایت‌های اول فایل («عدد جادویی» یا magic number) را بررسی می‌کند تا PNG، JPEG، GIF، WebP، BMP یا SVG را تشخیص دهد؛ به این ترتیب حتی وقتی نوع MIME مشخص نشده، تصویر را با نوع درست نمایش و ذخیره می‌کند.

Base64 هر ۳ بایت را با ۴ کاراکتر متنی نشان می‌دهد؛ به همین دلیل تصویرهای رمزگذاری‌شده حدود یک‌سوم بزرگ‌تر از فایل اصلی‌اند.

پرسش‌های متداول

چه زمانی از تصویر Base64 استفاده کنم؟

برای تصویرهای کوچک مثل آیکون، لوگو یا امضای ایمیل کمتر از حدود ۱۰ کیلوبایت. تصویرهای بزرگ‌تر به شکل فایل معمولی سریع‌تر بارگذاری می‌شوند، چون مرورگر آن‌ها را کش می‌کند.

چرا کد Base64 از خود تصویر بزرگ‌تر است؟

Base64 برای هر ۳ بایت ۴ کاراکتر لازم دارد، پس متن حاصل حدود ۳۳٪ بزرگ‌تر از فایل اصلی است.

data URI چیست؟

data URI یک فایل را مستقیم داخل یک لینک قرار می‌دهد: «data:»، نوع فایل، «;base64,» و محتوای رمزگذاری‌شده. مرورگرها با آن مثل URL یک تصویر رفتار می‌کنند.

محدودیت حجم وجود دارد؟

تصویرهای تا ۱۰ مگابایت را می‌توان اینجا تبدیل کرد، اما رشته‌های Base64 به این بزرگی به‌ندرت در کد کاربردی‌اند.