Şəkili Base64-ə çevirin

2 reytinqdən 5
.gif, .png, .jpg, .jpeg, .svg icazə verilir. Maksimum 64 MB.

Şəkili Base64-ə çevirin, şəkil faylını Base64 ilə kodlaşdırılmış mətn sətrinə çevirən pulsuz alətdir.

Base64 nədir və nə üçün istifadə olunur?

Base64 yüklənmiş şəklin binar məlumatlarını əsasən mətn üçün nəzərdə tutulmuş sistemlərdən keçirməyə imkan verən kodlaşdırma üsuludur. Mənbə məlumatındakı hər üç bayt müəyyən əlifbadan seçilən dörd çap edilə bilən simvolla ifadə olunur.

Ayrıca binar fayl ötürə bilməyən formatlarda bu üsul faydalıdır. Şəkli ilkin baytlarını adi binar formada əlavə etmədən data URL-ə, JSON xassəsinə və ya MIME e-poçt hissəsinə yerləşdirmək mümkündür. Yaradılan Base64 sətri şifrələnmir, sadəcə kodlaşdırılır. Sətri əldə edən hər kəs onu dekodlaşdıra bilər, buna görə Base64 məxfiliyi və ya girişə nəzarəti təmin etmir.

Kiçik bir mətn baytları nümunəsi bunun necə işlədiyini göstərir.

  • Daxil edilən mətn: <svg></svg>
  • Base64 nəticəsi: PHN2Zz48L3N2Zz4=

Şəkillərin əksəriyyətində oxuna bilən işarələmə deyil, binar baytlar olur. Buna görə onların giriş məlumatı bu mətn nümunəsinə bənzəməyəcək. PNG, JPEG, GIF, WebP və digər şəkil formatlarında prinsip eynidir.

Şəkli Base64-ə necə çevirim?

Şəkli alətə daxil et, çevirməni başladıb Base64 kodlaşdırılmış sahəsində qaytarılan dəyəri kopyala. Alət şəkil məlumatına PHP-nin base64_encode funksiyasını tətbiq edir.

  1. Mətn şəklində təqdim edilməli olan şəkli seç.
  2. Səhifənin faylı emal edib kodlaşdırılmış dəyəri qaytarmasını gözlə.
  3. Sondakı bərabərlik işarələri də daxil olmaqla bütün sətri kopyala.
  4. Təyinat sistemi data URL, JSON dəyəri və ya başqa konteyner tələb edirsə, uyğun sintaksisi sətrin ətrafına əlavə et.

Emal serverdə aparılır. Şəklin HTTPS üzərindən serverə göndərilir və saxlanılmır. Emal server tərəfində aparıldığı üçün çevirmə zamanı faylın yalnız cihazında qaldığını düşünmə.

Alınan Base64 sətrindən necə istifadə etməliyəm?

Sətri xam Base64 kimi istifadə et və ya qəbul edən sistemin tələb etdiyi sintaksisə yerləşdir. Base64 özü şəklin formatını, fayl adını, ölçülərini və ya hansı məqsədlə istifadə olunacağını göstərmir.

HTML və ya CSS data URL-də kodlaşdırılmış dəyər adətən media növündən və Base64 göstəricisindən sonra gəlir. PNG data URL-i data:image/png;base64, forması ilə başlayır və sətir dərhal bundan sonra yazılır. JPEG üçün image/jpeg, SVG üçün isə adətən image/svg+xml istifadə olunur. Yanlış media növü seçilərsə, etibarlı şəkil belə proqramda göstərilməyə bilər.

JSON daxilində Base64 adətən dırnaq içində sətir kimi saxlanılır və çox vaxt media növünü göstərən ayrıca sahə ilə birlikdə verilir. API konkret olaraq xam Base64 tələb edirsə, data URL prefiksi əlavə etmə. Bu iki giriş forması bir-birini əvəz etmir, ona görə alətin qaytardığı dəyərdən istifadə etməzdən əvvəl API sənədlərini oxu.

Real sistemlərdə Base64 ilə harada rastlaşacağam?

Binar məlumatın mətn əsaslı format və ya protokol vasitəsilə ötürülməli olduğu yerlərdə Base64 ilə tez-tez rastlaşacaqsan. Tipik nümunələr bunlardır:

  • Data URL-lər: HTML, CSS və ya yaradılmış sənədlərə yerləşdirilir.
  • JSON faydalı yükləri: şəkil məzmununu mətn xassəsində qəbul edən API-lərə göndərilir.
  • E-poçt mesajları: MIME qoşmaları və sətirdaxili şəkilləri Base64 kimi kodlaşdıra bilər.
  • Sorğu sətirləri: standart Base64 simvolları üçün əlavə URL kodlaşdırması da tələb oluna bilər.
  • Konfiqurasiya faylları: ixtiyari binar baytları birbaşa saxlaya bilməyən XML sənədləri və digər fayllar.

Beynəlmiləlləşdirilmiş domen adları da məlumatın məhdud simvol dəstinə çevrilməsinə nümunədir, lakin burada Base64 deyil, Punycode istifadə olunur. URL-ə yerləşdirilən dəyərlər üçün URL kodlayıcısı da lazım ola bilər, çünki standart Base64 tərkibində üstəgəl, bölmə və bərabərlik işarələri ola bilər.

Base64 niyə dekodlaşdırılmır və ya anlaşılmaz nəticə verir?

Girişdə kopyalanmış prefiks olduqda, məlumat zədələndikdə və ya yarımçıq qaldıqda, yaxud giriş dekoderin gözlədiyi Base64 formatına uyğun gəlmədikdə dekodlaşdırma uğursuz ola bilər. Anlaşılmaz nəticə çox vaxt etibarlı binar şəkil məlumatının dekodlaşdırıldığını, sonra isə səhvən adi mətn kimi göstərildiyini bildirir.

  • Kopyalanmış prefiks: dekoder yalnız Base64 gözləyirsə, xətaya səbəb ola bilər. Xam Base64 dekoderindən istifadə etməzdən əvvəl data:image/png;base64, kimi mətni sil.
  • Zədələnmiş və ya yarımçıq giriş: dekodlaşdırıldıqda görüntüləyicilərin aça bilmədiyi natamam şəkil yarana bilər.
  • İkiqat kodlaşdırma: ilk dekodlaşdırmadan sonra yenidən Base64 sətri alınır. Mənbə əvvəlcədən kodlaşdırılmış dəyəri təkrar kodlaşdırıbsa, ikinci dəfə dekodlaşdırmaq lazım ola bilər.
  • Yanlış əlifba: dekoder başqa variant gözləyirsə, xəta yarana bilər. Base64url standart Base64-dəki üstəgəl və bölmə işarələrinin yerinə defis və alt xətt işarələrindən istifadə edir.
  • Dolğu işarələrinin olmaması: ciddi qaydalarla işləyən dekoderlərə təsir edə bilər. Bəzi sistemlər onları bilərəkdən buraxsa da, standart Base64 bir və ya iki bərabərlik işarəsi ilə bitə bilər.

Dekodlaşdırılmış nəticə binardırsa, onu mətn redaktorunda açmaq əvəzinə düzgün şəkil formatında saxla. Sətir tamdırsa və gözlənilən formatdan istifadə edirsə, əks əməliyyat üçün Base64 dekoderi və ya Base64-dən Şəkilə aləti kömək edə bilər.

Format seçimi və çətin giriş məlumatları

Standart Base64 e-poçt, data URL və onu açıq şəkildə tələb edən sistemlər üçün uyğundur. URL yolları, sorğu parametrləri və tokenlər üçün qəbul edən sistemin tələb etdiyi variantdan istifadə et. Spesifikasiya bunu tələb edirsə, Base64url uyğun ola bilər. Bu alət PHP-nin standart base64_encode əməliyyatından istifadə edir, ona görə nəticənin Base64url olduğunu düşünmə.

Alət yüklənmiş şəklin baytlarını kodlaşdırır. SVG daxilindəki və ya şəklin metadatasındakı boşluqlar, durğu işarələri, rəqəmlər, aksentli simvollar və latın qrafikasından kənar mətn həmin baytların bir hissəsi kimi kodlaşdırılır. Belə simvolları olan fayl adı faylın məzmunundan ayrıdır və öz-özünə Base64 daxilində təmsil olunmur.

PHP-də base64_encode boş bayt sətri üçün boş dəyər qaytarır. Uzun fayllardan uzun sətirlər alınır. JSON və ya data URL sintaksisi əlavə edilməzdən əvvəl Base64 ilkin bayt sayını təxminən üçdə bir qədər artırır. Base64 şəkli sıxmır, keyfiyyətini yaxşılaşdırmır və piksel ölçülərini dəyişmir.

Tez-tez verilən suallar

Base64 şəkli birbaşa CSS-ə yerləşdirə bilərəm?

Bəli. Şəkil URL-lərini qəbul edən CSS xassələrində düzgün hazırlanmış data URL istifadə etmək olar. Bu üsul kiçik və müstəqil resurslar üçün əlverişlidir, lakin daha böyük şəkillər CSS faylının ölçüsünü artırır və həmin fayldan ayrıca keşlənə bilmir.

Base64 sətrimdə niyə sətirsonu işarələri var?

PHP-nin base64_encode funksiyası sətirsonu işarələri əlavə etmədiyi üçün bu alət nəticəni fasiləsiz sətir kimi qaytarır. Sətir qırılmaları sonradan başqa yerdə aparılan kopyalama və ya emal zamanı yaranır. Bir çox dekoder boşluqları nəzərə almır, lakin ciddi API-lər onları rədd edə bilər. Qəbul edən sistemin spesifikasiyası tələb edirsə, fasiləsiz sətirdən istifadə et.

Şəklin fayl adını dəyişsəm, Base64 dəyəri də dəyişər?

Base64 fayl adını deyil, faylın baytlarını təmsil edir. Buna görə məzmunu dəyişməyən faylın adını dəyişmək kodlaşdırılmış dəyərə təsir etmir. Ancaq metadatanı redaktə etmək, şəkli yenidən saxlamaq və ya formatını çevirmək baytları dəyişdirir və fərqli sətir yaradır.

Base64 məxfi şəkli qoruya bilər?

Xeyr. Base64 parol və ya məxfi açar olmadan geri çevrilə bilər. Məxfi material üçün uyğun şifrələmə, autentifikasiya və girişə nəzarət vasitələrindən istifadə et. Həmçinin unutma ki, bu alət emal üçün şəkli HTTPS üzərindən öz serverinə göndərir.

Çevirmənin düzgün aparıldığını necə yoxlayım?

Tam sətri dekodlaşdır və nəticəni ilkin formatı dəstəkləyən şəkil görüntüləyicisində aç. Ölçülərin və görünən məzmunun mənbə ilə eyni olduğunu yoxla. Təyinat sistemi sondakı dolğu simvollarının silinməsini açıq şəkildə tələb etmirsə, onları saxla.

Oxşar alətlər

Base64-dən Şəkilə

Base64 girişini şəkilə dekodlayın.

4,444
19

Populyar alətlər