Anteckningar från teamet om hantverk, format och de små beslut som ligger bakom ett bra resultat.
Varför WebP inte stöds överallt i skrivbordsappar
WebP kom från Google 2010, men skrivbordsprogramvaran släpade långt efter webbläsarna med att ta upp det. Webbläsare tog till sig WebP tidigt eftersom de styr sina egna renderingsmotorer och Google drev WebP-stödet i Chrome som ett konkurrensövertag. Skrivbordsappar rör sig långsammare vid ett nytt bildformat, eftersom var och en sköter sin egen avkodningsstack och ett nytt format kräver tester mot en lång svans av kniviga fall. Adobe Photoshop, det dagliga verktyget för de flesta yrkesfotografer och formgivare, levererade stöd för WebP först i version 23.2 i slutet av 2022. Microsoft Office-program hanterar WebP ojämnt över plattformarna ännu 2026. Print-RIP-programvara och merparten av äldre arkiveringsverktyg tog aldrig upp WebP. Följden är att en fil som ser felfri ut i en webbläsare kan nekas rakt av just det program användaren behöver, och att konvertera till PNG är den pålitliga vägen runt.
Hur WebP når sitt komprimeringsövertag över PNG
Under PNG ligger DEFLATE, en förlustfri arbetshäst från 1996. Den drar först omvändbara filter över varje skanrad och skickar sedan resultatet genom en zlib-ström, gediget arbete men från en tid före forskningen om videokodekar och maskininlärning skärpte hantverket. WebP tar med två nyare knep. I förlustläge drar det en blockbaserad transform ur VP8-video, med intrarutsprediktion och en diskret cosinustransform över 16x16-makroblock. I förlustfritt läge väver det samman spatial prediktion med en färgtransform och ett LZ77-steg som helt enkelt packar typisk bilddata hårdare än DEFLATE klarar. Googles egna mätningar lägger förlustfri WebP runt 26 procent under PNG på en standarduppsättning, och förlust-WebP med alfa kring en tredjedel av PNG vid samma synliga kvalitet. Att gå från PNG till WebP bokför den vinsten, så att gå från WebP tillbaka till PNG ger den åter, och filen sväller.
Uppmätta exempel på filstorlekstillväxt
Dessa kommer från Chrome 148 på en Linux-dator, med plattformens PNG-skrivväg på WebP-indata som webbläsaren avkodat. Ta en liten grafik i vektorstil på 400x300 pixlar, sparad som WebP med kvalitet 80, så skrivs den om till PNG på runt 15 till 25 ms med en tillväxt på en femtedel till en tredjedel. En fotografisk WebP på 1024x768, säg liten filstorlek, skrivs om till PNG inom 100 ms och sväller tre till fem gånger. Gå till en stor fotografisk WebP på 3840x2160, ungefär större filstorlek, så tar PNG cirka 1,2 sekunder att skriva medan den växer fem till tio gånger beroende på hur fullt motivet är. I ytterkanten kan ett stort WebP-foto kan landa nära ett mångdubbelt tyngre PNG. Varje siffra speglar hur mycket hårdare WebP packar samma pixlar, och tillväxten följer pixelantalet.
Alfatransparens fram och tillbaka
WebP och PNG delar samma 8-bitars alfaintervall, där 0 betyder helt transparent och 255 helt täckande. När webbläsaren avkodar en WebP som bär alfa bygger den en pixelbuffert av RGBA-värden vars A-komponent speglar den ursprungliga alfan. Att skriva om bufferten som PNG lägger de A-värdena rakt in i PNG:ens egen alfakanal. Ingen sammansättning sker, ingen bakgrundsfärg läggs på och ingen förmultiplicering skiftar tyst pixlarna. Utfallet är en förlustfri överlämning av alfan, där varje pixels opacitet i PNG matchar vad WebP höll. På bilder med fin kantutjämning kommer varje mellanvärde helt genom resan, säg en pixel på 40 procents opacitet längs en bokstavskant. Den trogenheten tippar valet mot PNG framför JPG så snart mottagarappen måste visa bilden mot mer än en bakgrund.
Beteende hos EXIF och metadata
Omskrivningen sopar bort EXIF-, IPTC- och XMP-fälten från den färdiga PNG-filen. En WebP kan stoppa undan EXIF i ett metadatablock, och blocket försvinner så snart webbläsaren avkodar och skriver om filen. Färgprofiler följer sin egen väg. Chrome och Safari håller kvar sRGB-profiltaggen på PNG efter att ha läst WebP, medan Firefox sopar bort allt, ICC-profilen med. Det lämnar en utdata som varje webbläsare läser som sRGB-säker, men en profil med brett färgomfång gömd i käll-WebP klarar sig inte genom Firefox. Lever din fotokedja på ICC-taggade rundresor, välj en konverterare som sköter metadata medvetet. För vanligt webbarbete är förlusten av de fälten oftast välkommen och kapar dessutom lite av filstorleken.
Verifiera integriteten i praktiken
Du prövar påståendet att ingen fildata lämnar webbläsaren med inget mer än webbläsaren. Öppna den, gå till webp-to-png-sidan och ta sedan fram utvecklarverktygen med F12 eller högerklicksmenyn. Växla till fliken Nätverk, rensa det som listas och kör en konvertering genom att släppa en WebP. Filtrera på Fetch, XHR eller All. Inget med bilddata dyker upp under skrivningen. De enda förfrågningarna på sidan är de inledande laddningsresurserna och vanliga analyspingar, som bara loggar sidvisningar och Core Web Vitals, aldrig din bild. Varje stor fjärrkonverterare av WebP till PNG avfyrar minst en uppladdnings-POST och en hämtnings-GET per jobb, var och en skriven till en serverlogg. På enheten skapas aldrig någon av de raderna, och det är skillnaden som räknas när filen bär något privat.