Nota daripada pasukan tentang kraf, format, dan keputusan kecil di sebalik hasil yang baik.
Mengapa WebP tidak disokong secara sejagat dalam aplikasi desktop
WebP dikeluarkan oleh Google pada 2010, tetapi penggunaannya oleh perisian desktop jauh ketinggalan di belakang sokongan pelayar. Pelayar menerima WebP awal kerana mereka mengawal enjin pemaparan sendiri dan Google secara aktif mengoptimumkan sokongan WebP Chrome sebagai kelebihan persaingan. Aplikasi desktop mengambil masa lebih lama untuk menerima format imej baharu kerana setiap aplikasi menyelenggara timbunan penyahkodan imej sendiri, dan menyokong format baharu memerlukan ujian terhadap rentetan panjang kes tepi. Adobe Photoshop, digunakan oleh majoriti jurugambar dan pereka profesional, tidak menghantar sokongan WebP asli sehingga versi 23.2 pada lewat 2022. Aplikasi Microsoft Office masih mengendalikan WebP secara tidak konsisten merentas platform sehingga 2026. Perisian RIP cetakan dan kebanyakan alat pengarkiban lama tidak pernah menerima WebP langsung. Akibat praktikalnya ialah fail yang dipaparkan sempurna dalam pelayar mungkin ditolak sepenuhnya oleh perisian yang diperlukan pengguna, dan menukar kepada PNG ialah penyelesaian yang boleh dipercayai.
Bagaimana WebP mencapai kelebihan mampatan berbanding PNG
PNG menggunakan mampatan DEFLATE, algoritma tanpa kehilangan tujuan umum dari 1996. Ia menerapkan satu set penapis boleh balik pada setiap garis imbas sebelum mampatan dan mengekod hasilnya dengan aliran zlib. Ini berkesan tetapi direka sebelum penyelidikan pembelajaran mesin dan penyahkod video menghasilkan teknik yang lebih baik. WebP mod berkehilangan menggunakan transformasi berasaskan blok yang diterbitkan daripada mampatan video VP8, menerapkan ramalan dalam bingkai dan transformasi kosinus diskret pada unit makroblok 16x16. WebP mod tanpa kehilangan menggunakan ramalan ruang, transformasi warna, dan peringkat pengekodan LZ77 yang secara struktur lebih cekap daripada DEFLATE bagi kandungan imej biasa. Penanda aras yang diterbitkan Google menunjukkan WebP tanpa kehilangan kira-kira 26 peratus lebih kecil daripada PNG pada korpus imej ujian piawai, dan WebP berkehilangan dengan alfa kira-kira satu pertiga lebih kecil daripada PNG pada kualiti visual setanding. Arah PNG ke WebP mengeksploitasi keuntungan ini, arah WebP ke PNG membalikkannya, lalu keluaran lebih besar.
Contoh pertumbuhan saiz fail yang diukur
Diukur pada Chrome 148, desktop Linux, menggunakan laluan tulis PNG yang ada pada sistem terhadap input WebP yang telah dinyahkod. Grafik gaya vektor kecil pada 400x300 piksel, disimpan sebagai WebP kualiti 80, dinyahkod dan ditulis semula sebagai PNG dalam kira-kira 15 hingga 25 ms dengan pertumbuhan saiz fail biasa 20 hingga 30 peratus. WebP fotografi pada 1024x768, sekitar saiz kecil, dinyahkod dan ditulis semula ke PNG dalam masa kurang 100 ms dengan pertumbuhan biasa 3 hingga 5 kali ganda. WebP fotografi besar pada 3840x2160, sekitar saiz lebih besar, ditulis ke PNG dalam kira-kira 1.2 saat dengan pertumbuhan 5 hingga 10 kali ganda bergantung pada kerumitan babak. Had atas praktikal ialah foto WebP besar menjadi PNG beberapa kali lebih besar. Angka ini mencerminkan perbezaan kecekapan mampatan antara dua format dan berkembang secara linear mengikut bilangan piksel.
Ketelusan alfa dalam perjalanan pergi balik
Saluran alfa 8 bit dalam WebP dan PNG menggunakan julat nilai yang sama, di mana 0 ialah telus sepenuhnya dan 255 ialah legap sepenuhnya. Apabila pelayar menyahkod WebP dengan alfa, ia menghasilkan penimbal piksel dengan nilai RGBA di mana komponen A mencerminkan data alfa asal. Apabila penimbal itu ditulis semula sebagai PNG, penulis PNG menulis nilai A terus ke dalam saluran alfa PNG. Tiada langkah penggubahan berlaku, tiada warna latar dikenakan, dan tiada kesan sampingan pra-darab yang mengubah nilai piksel. Hasilnya ialah pemindahan saluran alfa tanpa kehilangan, di mana nilai kelegapan setiap piksel dalam PNG sepadan dengan apa yang disimpan WebP. Bagi imej dengan anti-alias halus di tepi, setiap nilai alfa perantaraan, contohnya piksel pada kelegapan 40 peratus di tepi teks, terselamat sepanjang perjalanan dengan utuh. Kesetiaan inilah yang menjadikan PNG pilihan yang betul berbanding JPG apabila aplikasi destinasi perlu memaparkan imej pada pelbagai latar.
Tingkah laku EXIF dan metadata
Saluran tulis semula melucutkan metadata EXIF, IPTC dan XMP daripada keluaran PNG. Fail WebP boleh membawa data EXIF terbenam dalam ketulan metadatanya, dan data itu hilang apabila pelayar menyahkod dan menulis semula imej. Profil warna ICC mengikut laluan berbeza, di mana Chrome dan Safari mengekalkan teg profil ICC sRGB dalam keluaran PNG selepas menyahkod WebP, dan Firefox melucutkan semua metadata termasuk profil ICC. Akibat praktikalnya ialah keluaran selamat sRGB merentas semua pelayar, tetapi sebarang profil gamut luas terbenam dalam WebP sumber tidak terselamat dalam Firefox. Bagi aliran kerja fotografi profesional yang bergantung pada perjalanan pergi balik berteg ICC, gunakan alat penukaran yang mengambil kira metadata. Bagi pengendalian imej web standard, pembuangan metadata biasanya boleh diterima dan mempunyai manfaat kecil mengurangkan sedikit saiz fail keluaran.
Pengesahan privasi dalam amalan
Dakwaan bahawa tiada data fail meninggalkan pelayar boleh disemak tanpa sebarang alat khas. Buka pelayar anda, navigasi ke halaman webp-to-png, kemudian buka alat pembangun pelayar dengan F12 atau menu klik kanan. Tukar ke tab Network, kosongkan sebarang permintaan sedia ada, dan jalankan penukaran dengan melepaskan satu fail WebP. Tapis senarai permintaan mengikut Fetch, XHR, atau All. Senarai itu menunjukkan sifar permintaan keluar yang mengandungi data imej semasa penyimpanan. Satu-satunya permintaan rangkaian yang hadir ialah aset muat halaman awal dan ping analitik standard, yang merekod paparan halaman dan data prestasi Core Web Vitals sahaja, tanpa kandungan imej. Setiap penukar WebP ke PNG jauh yang utama menjana sekurang-kurangnya satu POST muat naik dan satu GET muat turun setiap penukaran, kedua-duanya dilog pada pelayan. Seni bina pada peranti bermakna entri log itu tidak wujud, yang merupakan perbezaan bermakna bagi pengguna yang menukar fail mengandungi kandungan sensitif.