Nasıl kullanılır
- Bir Base64 dizesi veya data:image/webp;base64 URI'si yapıştırın. Diğer görsel biçimleri de çalışır.
- Önizlemeyi, algılanan biçimi ve kodu çözülmüş boyutu kontrol edin.
- Dönüştürmek için indirme biçimini WebP olarak bırakın veya baytları kodu çözüldüğü hâliyle kaydetmek için "Orijinal" seçeneğini seçin.
- .webp dosyasını indirin ve boyutunu kaynakla karşılaştırın.
WebP verisini tanıma
WebP, WAV ses dosyalarının da kullandığı RIFF kapsayıcısında saklanır. Dosya ASCII metni RIFF ile başlar, bu yüzden Base64 karşılığı UklGR ile başlar; birkaç bayt sonra gelen WEBP işareti, kapsayıcının ses değil görsel içerdiğini doğrular. İçerideki görsel ya kayıplı (VP8), ya kayıpsız (VP8L) ya da saydamlık, animasyon veya meta veri ekleyen genişletilmiş bir dosyadır (VP8X). MIME türü image/webp şeklindedir.
Neden WebP'ye dönüştürmeli
Google'ın ölçümlerine göre kayıplı WebP dosyaları, karşılaştırılabilir kalitedeki JPEG'lerden kabaca yüzde 25 ila 34 daha küçüktür; kayıpsız WebP ise PNG'den yaklaşık yüzde 26 daha küçüktür. JPEG'in aksine WebP alfa kanalını korur, bu nedenle saydam logolar ve çıkartmalar sorunsuz dönüştürülür. Güncel büyük tarayıcıların tümü WebP'yi görüntüler.
Görseller satır içine gömüldüğünde küçük dosyaların önemi iki katına çıkar: daha hafif bir görsel, HTML, CSS veya JSON'unuzda daha kısa bir Base64 dizesi demektir. Dönüştürdükten sonra yeni dosyayı WebP'den Base64'e aracıyla yeniden kodlayabilirsiniz.
Sonuç her zaman daha küçük olmaz. Çok küçük simgeler, zaten iyi sıkıştırılmış fotoğraflar ve az renkli düz grafikler bazen daha büyük çıkar; bu durumda PNG veya JPG daha iyi bir seçimdir. Buradaki dönüştürme, bir derleme sürecini değiştirmeden önce belirli bir görselin ne kadar kazanç sağlayacağını test etmenin de hızlı bir yoludur: bir Base64 PNG veya JPEG yapıştırın, WebP'yi indirin ve iki boyutu karşılaştırın.
Pillow ile dönüştürme
Sunucudaki toplu işler için aynı dönüştürme, Pillow kütüphanesiyle birkaç satırlık Python koduyla yapılabilir:
import base64, io
from PIL import Image
img = Image.open(io.BytesIO(base64.b64decode(b64_string)))
img.save('output.webp', 'WEBP', quality=80)
Sıkça sorulan sorular
WebP saydamlığı korur mu?
Evet. WebP hem kayıplı hem kayıpsız modda tam alfa kanalını destekler; bu nedenle saydam alanlar dönüştürmeden sonra da saydam kalır.
Animasyonlu bir WebP'yi koruyabilir miyim?
Tüm kareleri korumak için "Orijinal" olarak indirin. Dönüştürme bir canvas üzerinden yapılır ve canvas tek bir durağan kare yakalar.
WebP çıktısı her zaman girdiden küçük mü olur?
Hayır. Büyük fotoğraflar ve ekran görüntüleri genellikle küçülür, ancak küçük veya yoğun şekilde optimize edilmiş görseller büyüyebilir. Aracın gösterdiği kodu çözülmüş boyutu indirilen dosyanın boyutuyla karşılaştırın.
Bazı yazılımlar WebP dosyamı açmıyor. Ne yapabilirim?
Eski görsel görüntüleyiciler ve ofis programları WebP desteğinden yoksun olabilir. Aynı Base64 verisini yapıştırın ve bunun yerine PNG veya JPG olarak indirin.