Konverter JPG til Base64

Kod JPG- og JPEG-bilder som Base64. Behold originalfilen byte for byte, eller kod den på nytt med lavere kvalitet og mindre bredde for å holde strengen kort.

Kjører helt i nettleseren din. Ingenting lastes opp.

Slik bruker du verktøyet

  1. Slipp en .jpg- eller .jpeg-fil i slippfeltet, klikk for å velge en, eller lim inn et bilde.
  2. Vil du beholde filen nøyaktig som den er, velger du Behold originalformat. For å gjøre den mindre velger du JPEG eller WebP under Konverter til og senker Kvalitet.
  3. Angi Maks. bredde hvis bildet er større enn det skal vises.
  4. Kopier utdataene du trenger, for eksempel img-taggen til en side eller ren Base64 til et API, eller last dem ned som en fil.

Kort om JPEG

JPEG er standardformatet for fotografier. Det bruker tapsbasert komprimering, som forkaster detaljer øyet knapt legger merke til, og har ingen gjennomsiktighet. Filene ender på .jpg, .jpeg eller noen ganger .jfif, men MIME-typen er alltid image/jpeg; image/jpg er ingen registrert type, selv om mange nettlesere godtar den. En JPEG-data URI begynner med data:image/jpeg;base64,/9j/, den kodede markøren for bildets begynnelse.

Gjør bildet mindre før koding

Det er for fotografier Base64 koster mest: en JPEG på 200 KB blir omtrent 270 KB tekst. To innstillinger utgjør den største forskjellen:

  • Maks. bredde. Halverer du bredden, reduseres antall piksler til en fjerdedel. Et mobilbilde som er 4000 piksler bredt, trengs sjelden i den størrelsen.
  • Kvalitet. Verdier rundt 70 til 80 % ser vanligvis like ut som originalen på skjermen og er mye mindre. Svært lave verdier gir synlige blokkartefakter.

Konvertering til WebP med tilsvarende kvalitet gir ofte en enda mindre fil. Følg med på den kodede størrelsen som vises for hver innstilling, og behold det minste resultatet som fortsatt ser riktig ut.

EXIF-metadata

Bilder fra kameraer og mobiler inneholder EXIF-metadata: kameramodell, dato og klokkeslett og noen ganger GPS-koordinater. Uten konvertering inneholder Base64-utdataene de opprinnelige bytene, metadata inkludert, og alle som dekoder dem, kan lese dem. Det er ønskelig når den nøyaktige filen er viktig, for eksempel når et API sjekker en hash eller leser opptaksdatoen.

Ved konvertering kodes pikslene på nytt i nettleseren, og EXIF-dataene blir ikke med. Utdataene blir mindre og avslører ikke lenger hvor bildet ble tatt.

Når en JPEG-data URI er verdt det

Gode bruksområder er bittesmå uskarpe plassholdere (et bilde på 20 til 40 piksler i bredden som bygges inn mens det fulle bildet lastes inn senere), miniatyrbilder i JSON-svar og HTML-eksporter i én fil. Store toppbilder og gallerier hører hjemme i separate filer som nettleseren kan hurtigbufre.

# Python
import base64
with open('photo.jpg', 'rb') as f:
    uri = 'data:image/jpeg;base64,' + base64.b64encode(f.read()).decode('ascii')

Ofte stilte spørsmål

Er JPG det samme som JPEG?

Ja. Den kortere filendelsen .jpg stammer fra systemer som bare tillot tre tegn. Begge er det samme formatet med MIME-typen image/jpeg.

Reduserer Base64-koding JPEG-kvaliteten?

Nei. Base64 er en tapsfri gjengivelse av filbytene. Kvaliteten endres bare hvis du velger en konvertering, som koder bildet på nytt med kvaliteten du angir.

Kan en JPEG-data URI ha gjennomsiktig bakgrunn?
Nei, JPEG har ingen alfakanal. For gjennomsiktighet bruker du PNG eller WebP.
Inneholder Base64-strengen stedet der bildet ble tatt?

Det kan den. Hvis den opprinnelige JPEG-filen har GPS-data i EXIF-metadataene og du koder den uendret, finnes posisjonen i strengen. Konvertering av bildet fjerner EXIF-metadataene.