Kodirati sliko v Base64 / Data URI

pretvori vaše slike v base64 datoteke, idealno za integracijo slik neposredno v HTML ali CSS kodo
Format datoteke

Naložite lahko neomejeno število slik z največjo težo 20M.

Varnost

Vaši podatki niso shranjeni na naših strežnikih.

Podprti brskalniki

Podprti so vsi najnovejši brskalniki. Če pa naletite na napako, nam sporočite, da jo popravimo.

Kaj je podatkovni URI?

URI podatkov je URL, ki neposredno vsebuje podatke vira namesto kažejo na oddaljeno datoteko. Njegova splošna oblika je podatki:[][;base64],. Za sliko imamo običajno data:image/png;base64,iVBORw0KGgo…. Vir je vdelan v HTML, CSS ali JSON in naložen brez dodatne zahteve HTTP.

Zakaj kodirati sliko v Base64?

Pogoste motivacije:

  • Zmanjšajte zahteve HTTP: integrirajte ikono neposredno v CSS, namesto da bi jo naložili poleg dokumenta
  • E-poštni podpis z vgrajeno sliko: ni nevarnosti, da bi bila slika blokirana kot oddaljena vsebina
  • Spletne komponente / spletni delavci: kjer nalaganje zunanjega vira pogosto predstavlja težavo obsega ali CORS
  • Lokalna shramba (LocalStorage, IndexedDB, zbirka podatkov): serializirajte sličico avatarja v niz
  • Samostojni izrezki: samostojna datoteka HTML brez zunanjih odvisnosti

Tipični primeri uporabe

Nekateri konkretni konteksti, kjer je kodiranje slik Base64 upravičeno:

  • Ikone SVG v vrstici v CSS (background-image: url("data:image/svg+xml;base64,…"))
  • Prilagojeni e-poštni podpisi z logotipom
  • Hitra izdelava prototipov samostojne strani v skupni rabi po e-pošti
  • Samostojne spletne komponente (ena datoteka, ki jo je mogoče namestiti)
  • Ustvarjanje PDF-ja na strani brskalnika (jsPDF) z vdelanimi sličicami
  • Preskusni podatki (posnetki), ki vsebujejo slike

Kako ga uporabljati

Trije koraki:

  1. Naložite svojo sliko (PNG, JPG, SVG, WebP, GIF) prek spustnega območja
  2. Kliknite »Kodiraj«
  3. Kopirajte dobljeni podatkovni URI z namenskim gumbom in ga prilepite v svoj HTML, CSS ali JSON

Omejitve in najboljše prakse

Base64 ni srebrna krogla. Nekateri previdnostni ukrepi:

  • Base64 poveča velikost za ~33 %: 4 znaki ASCII za vsake 3 binarne bajte
  • Kodiranih slik brskalnik ne shranjuje posebej; znova se naložijo s HTML/CSS, ki jih vsebuje
  • Prednost za slike, manjše od 10 KB; Poleg tega je zunanja datoteka na splošno bolj učinkovita
  • Za SVG raje kodirajte URL (prek encodeURIComponent) namesto Base64: rezultat je krajši in ga je mogoče razčleniti kot besedilo
  • Sodobna orodja za gradnjo (Webpack, Vite) avtomatizirajo izbiro Base64 proti Base64. zunanjo datoteko prek nastavljive velikosti praga

Konkretni primeri

HTML:

pixel

CSS:

.icon {
  ozadje: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0i…") brez ponavljanja;
  širina: 16px;
  višina: 16px;
}

JSON (lažni podatki):

{
  "uporabnik": {
    "ime": "Adrien",
    “avatar”: “data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEA…”
  }
}

pogosta vprašanja

Kakšna je razlika med Base64 in binarnim?

Binarno predstavlja neobdelane bajte datoteke. Base64 je kodiranje, ki preoblikuje te bajte v 64 natisljivih znakih ASCII (A-Z, a-z, 0-9, +, /). Besedilni konteksti (HTML, JSON, e-pošta) ne ne more prenašati dvojiškega zapisa; Base64 rešuje to težavo na račun 33-odstotnega povečanja velikosti.

Zakaj je moj podatkovni URI tako dolg?

30 KB velika slika v binarni obliki postane ~40 KB v Base64. In vsak znak je bajt ASCII, tako da, veriga je dolga. To je neločljivo povezano s kodiranjem. Za velike slike shranite zunanjo datoteko.

Ali vsi brskalniki podpirajo podatkovne URI?

Da, brez izjeme med sodobnimi brskalniki (Chrome, Firefox, Safari, Edge od IE8 celo). Omejitve zgodovinski: IE8 omejen na 32 KB. Danes na spletu ni več skrbi.

Kako dekodirati podatkovni URI?

Naš dekodirnik slik Base64 deluje ravno nasprotno: prilepite svoj podatkovni URI, pripravite slikovno datoteko (PNG, JPG, SVG, WebP) za nalaganje ali shranjevanje.

Base64 v primerjavi s kodiranjem URL za SVG?

Za SVG kodiranje URL (s encodeURIComponent) ustvari krajši niz kot Base64 in ostane berljiv kot besedilo. To je priporočena izbira v CSS pri integraciji SVG v vrstico. Za binarne formate (PNG, JPG) ostaja Base64 obvezen.

Ali kodiranje Base64 vpliva na kakovost slike?

Ne. Kodiranje je brez izgub: je binarni bajt ↔ bijekcija niza Base64. Piksli originalni so strogo ohranjeni. Samo velikost prenesene datoteke se poveča za 33 %.

Pogosta vprašanja

Kdaj se je bolje izogniti podatkovnemu URI-ju?

Takoj ko slika preseže deset kilobajtov in bo verjetno ponovno uporabljena na več straneh je boljša zunanja datoteka. Brskalnik ga lahko nato vnese predpomnilnik ločeno od HTML-ja, ki se nanj sklicuje. Podatkovni URI razširja glavni dokument in zahteva za ponoven prenos slike ob vsakem nalaganju strani.

Ali je moja slika poslana strežniku?

Slika gre skozi naš strežnik med kodiranjem in se po vrnitvi ne ohrani od rezultata. Storitve tretjih oseb niso zahtevane. Za strogo zaupno datoteko, lokalni ekvivalent je base64 -w 0 my-image.png v Linuxu ali certutil -encode v sistemu Windows.

Zakaj izbrati kodiranje URL namesto base64 za SVG?

SVG je besedilo XML. Kodiran z Base64, postane neberljiv in približno 33 % večji. Pri kodiranju URL-jev prek encodeURIComponent ostane rezultat berljiv in krajši. V CSS napišite url("data:image/svg+xml;utf8,") z znaki escaped specials povzroči končno datoteko, manjšo od različice base64.

Kakšno največjo velikost lahko kodiram?

Velikost datoteke, ki jo sprejme obrazec, je omejena na nekaj megabajtov, kar zadostuje za veliko večino ikon, sličic in avatarjev. Poleg tega zapustite primer razumne uporabe podatkovni URI: statična datoteka, ki jo streže vaš CDN, bo veliko bolj učinkovita za brskalnik kar zadeva vaše meritve Core Web Vitals.

Zakaj brskalnik podatkovnega URI-ja ne shrani v predpomnilnik?

Predpomnilnik HTTP deluje po URL-ju. Podatkovni URI je del dokumenta, ki ga vsebuje, zato je se z njim ponovno napolni. Zunanja ikona v icon.png pa je nasprotno predpomnjena enkrat za vselej in ponovno uporabljen na vseh straneh, ki se nanjo sklicujejo. To je glavno Zato podatkovni URI ostaja nišno orodje in ne splošna zamenjava.

Primer zahteve

curl -X POST https://cdrn.fr/api/v1/tools/base64-image-encoder/execute \
  -F "file=@/path/to/file"

Vhodna shema

Polje Tip Obvezno Privzeto
file file

to orodje pričakuje datoteko - uporabite Content-Type multipart/form-data namesto application/json

Končne točke

  • GET https://cdrn.fr/api/v1/tools - izpiše vsa razpoložljiva orodja
  • GET https://cdrn.fr/api/v1/tools/base64-image-encoder - pridobi shemo tega orodja
  • POST https://cdrn.fr/api/v1/tools/base64-image-encoder/execute - izvede to orodje s JSON payloadom