Resim Boyutu Küçültme (Görsel Sıkıştırma)

Görselleri bırakın; hangi biçimin ne kadar tuttuğunu ve neyi kaybettiğinizi görüp seçin. Dosyalarınız cihazınızdan çıkmıyor.

Giriş

Bir görselin ne kadar sıkıştırılacağının tek doğru cevabı yok. Cevap görselin kendisine bağlı: kalabalık bir manzara ile düz renkli bir logo aynı kalitede kat kat farklı yer tutuyor.

Bu araç tahmin ettirmiyor. Aynı görseli WebP, JPEG ve PNG olarak kodlayıp yan yana koyuyor, kaybı ölçüyor ve önce ile sonrayı üst üste bindirip kaydırmalı gösteriyor.

Görselleriniz cihazınızdan çıkmıyor. Kodlama da karşılaştırma da tarayıcınızda yapılıyor; dosya sayısı ve boyut sınırı yok.

Dosya boyutu mu, piksel ölçüsü mü?

Türkçede resim boyutu küçültme iki ayrı işi birden anlatıyor ve arayan kişi çoğu zaman hangisini istediğini bilmiyor. Karışıklık "boyut" kelimesinden çıkıyor.

Ölçü, görselin kaç piksel olduğu: 3000×2000 gibi. Ağırlık ise dosyanın kaç kilobayt tuttuğu. İkisi bağlantılı ama aynı şey değil; aynı ölçüdeki iki fotoğraftan biri 200 KB, öteki 2 MB olabilir.

Hangisinin sorun olduğunu anlamanın kolay yolu var. Siteye yüklerken "dosya çok büyük" uyarısı alıyorsanız ağırlık, görsel sayfada devasa görünüyor ya da yavaş açılıyorsa genellikle ölçü sorunudur. Çoğu zaman ikisi birden.

Bu araç ikisini de yapıyor ve hangisini istediğinizi ayrı ayrı seçiyorsunuz: kaliteyi düşürmek ağırlığı azaltıyor, "en büyük kenar" kutusuna bir sayı yazmak ölçüyü küçültüyor. Pratikte en büyük kazanç ölçüden geliyor; 3000 piksellik bir fotoğrafı 1600 piksele indirmek, kaliteyle oynamaktan daha çok kazandırıyor ve gözle görülen kaybı daha az oluyor.

Görsel sıkıştırma nedir?

Sıkıştırma, görüntüyü daha az baytla anlatmak demek. İngilizce kaynaklarda image compressor, image optimizer ya da photo compressor adıyla geçiyor.

İki türü var. Kayıpsız sıkıştırmada piksel verisi birebir korunuyor; kazanç sınırlı ama görüntü hiç değişmiyor. PNG böyle çalışıyor. Kayıplı sıkıştırmada gözün fark etmediği ayrıntılar atılıyor; kazanç çok daha büyük oluyor. JPEG ve WebP böyle çalışıyor.

Kalite yüzdesi bu atmanın ne kadar sert olacağını belirliyor. Yüzde 100 neredeyse hiçbir zaman gerekmiyor: dosya birkaç kat büyüyor, ekranda görünen fark ise yok.

Türkçede bu işe resim boyutu küçültme, fotoğraf sıkıştırma ya da görsel optimizasyonu deniyor. Üçü de aynı şeyi anlatıyor ama "boyut" kelimesi iki ayrı anlama geliyor ve karışıklık buradan çıkıyor: bir görselin ölçüsü (kaç piksel) ile ağırlığı (kaç kilobayt) farklı şeyler. Araç ikisini birden yapıyor, hangisini istediğinizi ayrı ayrı seçiyorsunuz.

Nasıl küçültülür, adım adım

Görselleri kutuya bırakın ya da tıklayıp seçin. Birden çok dosya olabilir; ekran görüntüsünü doğrudan yapıştırmak da çalışıyor.

İki kip var. Kaliteye göre kipte bir kalite yüzdesi seçiyorsunuz ve araç üç biçimin de sonucunu gösteriyor. Hedef ağırlığa göre kipte bir kilobayt sayısı yazıyorsunuz ve araç o ağırlığın altına inen en yüksek kaliteyi arıyor.

Ölçü de küçülecekse "En büyük kenar" kutusuna bir sayı yazın. Boş bırakırsanız ölçüye dokunulmuyor.

Sıkıştır ve karşılaştır düğmesine bastığınızda her görsel için üç biçim yan yana çıkıyor, en küçüğü işaretleniyor ve altında önce ile sonra üst üste bindirilmiş hâlde duruyor. Aradaki çizgiyi kaydırarak farkı kendiniz görüyorsunuz.

Beğendiğiniz biçme tıklayıp indirin. Birden çok dosya varsa "Hepsini indir" hepsini arka arkaya indiriyor.

Kalite kaybı olan ve olmayan sıkıştırma

Bu ayrım hangi biçmi seçeceğinizi belirliyor ve çoğu araç açıklamadan geçiyor.

Kayıpsız sıkıştırmada piksel verisi birebir korunuyor. Görsel açıldığında sıkıştırılmadan önceki hâliyle aynı; tek kazanç dosyanın daha verimli paketlenmesi. Bu araçta kayıpsız seçenek PNG. Kazancı sınırlı ama kayıp da sıfır.

Kayıplı sıkıştırmada gözün fark etmediği ayrıntılar atılıyor ve geri getirilemiyor. Kazanç kat kat büyük oluyor. JPEG ve WebP böyle çalışıyor.

Seçim şuna bakıyor: görselde saydamlık varsa ya da keskin kenarlı bir çizim, logo, ekran görüntüsüyse PNG doğru seçim; hem saydamlığı koruyor hem de az renkli görsellerde şaşırtıcı derecede küçük kalıyor. Fotoğrafta ise PNG dosyayı gereksiz yere birkaç kat büyütüyor, WebP ya da JPEG doğru seçim.

Karar vermek zorunda değilsiniz: araç üçünü de kodlayıp ağırlıklarını yan yana koyuyor ve kayıplı olanların ne kadar bozulduğunu ölçüp yazıyor. Sayıya bakarak seçiyorsunuz.

Sayfa hızının en büyük kaldıracı burası

Bir sayfanın ağırlığının çoğunu genellikle görseller oluşturuyor. Yazı tipini, betiği ve şablonu ne kadar kısarsanız kısın, tek bir işlenmemiş fotoğraf hepsinin toplamından ağır gelebiliyor.

Google’ın ölçtüğü LCP (en büyük içerik boyaması) çoğu sayfada bir görsele denk geliyor. Yani ziyaretçinin "sayfa açıldı" dediği an, o görselin inme anı oluyor.

Araç bu yüzden ağırlığın yanında süreyi de yazıyor. "300 KB çok mu" sorusunun cevabı yok; "4G’de 0,2 saniye, 3G’de 0,8 saniye" sorusunun cevabı var.

Hangi biçim kazanır, ölçmeden bilinmiyor

Yaygın tavsiye "WebP kullan" oluyor ve çoğu zaman da doğru çıkıyor. Ama her zaman değil.

Ölçtüğümüz bir manzara fotoğrafında yüzde 80 kalitede WebP 334 kilobayt, JPEG 738 kilobayt tuttu: WebP dosyayı ikiye böldü. Buna karşılık az renkli, keskin kenarlı bir görselde PNG hem kayıpsız kalıyor hem de kayıplı biçimlere yaklaşan bir ağırlığa iniyor.

Araç bu yüzden tahmin yürütmüyor: üç biçimde de kodlayıp üçünün ağırlığını yan yana koyuyor ve en küçüğünü işaretliyor. Seçim sizde kalıyor; başka bir biçime tıklayınca indirme bağlantısı da karşılaştırma da ona göre değişiyor.

PNG’yi listede tutmamızın sebebi saydamlık. Logonuzun arkası saydamsa JPEG bir seçenek değil, ne kadar küçük olursa olsun.

Kayıp tahmin değil, ölçüm

"Yüzde 80 kalite gözle ayırt edilmez" cümlesi doğru ama ispatlanmadıkça bir iddiadan ibaret. Araç ispatlıyor.

Sıkıştırılmış görsel geri çözülüp özgün pikselle karşılaştırılıyor ve ortalama fark hesaplanıyor. Yeşil kanal iki katı ağırlıkta tutuluyor: gözün parlaklık algısının yarıdan fazlası yeşilden geliyor.

Çıkan sayı yüzde olarak yazılıyor ve düz Türkçeye çevriliyor. Yüzde 0,6’nın altı gözle ayırt edilmiyor. 1,5’a kadar yan yana koyunca fark ediliyor. Üstü tek başına bakınca da belli oluyor.

Kare ortalama (RMSE) yerine ortalama mutlak fark kullanılıyor. Sebebi şu: kare ortalama tek tük uç pikselde şişip bütün görseli olduğundan kötü gösteriyor, gözün davranışı ise ortalamaya daha yakın.

Hedef ağırlık ve ölçünün gerçek payı

İkinci kip bir ağırlık hedefi alıyor ve o hedefin altına inen en yüksek kaliteyi arıyor. Arama ikili bölmeyle yapılıyor: kademeli düşürmeye göre çok daha az kodlamayla yüzdelik hassasiyete iniyor.

Hedefe ulaşılamazsa araç bunu saklamıyor. En düşük kalitede bile hedefin üstünde kalınıyorsa uyarı çıkıyor, çünkü söylenecek doğru şey belli: sorun kalitede değil, ölçüde.

Ölçü çoğu zaman en büyük kaldıraç. 2000 piksel genişliğindeki bir fotoğrafı 1200’e indirmek, kaliteyi yüzde 80’den 60’a çekmekten daha fazla kazandırıyor ve gözle görülen kaybı daha az oluyor. Sitenizin gövde genişliği çoğu şablonda 800 pikselin altında; iki kat yoğunluklu ekranlar için 1600 piksel fazlasıyla yetiyor.


Sık sorulanlar

Bu araç EXIF temizleyiciden farklı mı?

Evet, ikisi ayrı soruya cevap veriyor. Gelişmiş EXIF Temizleme "bu görseli nerede kullanacaksın" diye soruyor ve ölçüyü, biçimi, kaliteyi kendisi kuruyor; asıl işi konum ve kamera bilgisini silmek.

Buradaki araç ise seçimi size bırakıyor: biçimleri yarıştırıyor, kaybı ölçüyor, önce ve sonrayı üst üste bindiriyor. Ne yapmak istediğinizi biliyorsanız burası, karar vermek istemiyorsanız orası.

Not: tuvale yeniden kodlama EXIF’i zaten düşürüyor, yani buradan çıkan dosyada da konum bilgisi kalmıyor.

Neden AVIF yok?

Ölçtük ve güvenli bulmadık. Tarayıcının toBlob işlevi desteklemediği bir biçim istendiğinde hata vermiyor: sessizce PNG döndürüyor.

Sonuç, adı .avif olan bir PNG dosyası oluyor. Kullanıcı bunu fark etmeden siteye koyuyor ve dosya beklenenin kat kat üstünde ağırlık yapıyor. Sessizce yanlış sonuç vermektense biçimi hiç sunmamayı seçtik.

PNG neden bazen özgün dosyadan büyük çıkıyor?

Çünkü yeniden kodlanıyor. Özgün PNG’niz bir optimizasyon aracından geçmişse (palet daraltma, gereksiz blokların atılması) tarayıcının tuval kodlayıcısı o kadar iyisini yapmıyor.

Bu durumda listede PNG’nin ağırlığı özgün dosyanın üstünde görünüyor ve araç bunu "büyüdü" diye yazıyor. Doğrusu özgün dosyayı olduğu gibi bırakmak; yalnız üstverisini temizlemek istiyorsanız EXIF temizleyicideki "Olduğu gibi" seçeneği görüntüye hiç dokunmadan bunu yapıyor.

Kaç dosya birden işleyebilirim?

Sınır koymadık. İşlem tarayıcınızda yapıldığı için bize bir maliyeti yok; sınırı cihazınızın belleği belirliyor.

Karşılaştırma için kullanılan sitelerin çoğunda böyle bir sınır var: Squoosh tek seferde tek dosya alıyor, TinyPNG ücretsiz sürümde dosya başına 5 megabayt ve oturum başına yirmi dosya sınırı koyuyor. İkisinde de dosyalar sunucuya gidiyor ya da tek tek elden geçiriliyor.

Görsellerim gerçekten yüklenmiyor mu?

Yüklenmiyor. Kodlama tarayıcının kendi tuval arayüzüyle, karşılaştırma da bellekteki piksel verisiyle yapılıyor.

İsterseniz doğrulayabilirsiniz: tarayıcının geliştirici araçlarında Ağ sekmesini açıp görsel bırakın. Dışarı giden hiçbir istek görmeyeceksiniz.

Aracı beğendiniz mi?

Bu aracı ve altındaki açıklamayı, işini kendi yürüten bir işletme sahibine yetecek açıklıkta yazmaya çalıştık.

Teşekkür ederiz. Bundan sonraki çalışmaları da aynı açıklıkta yazmayı sürdüreceğiz.

Teşekkür ederiz. Eksik bulduğunuz noktayı info (at) kobiseo (nokta) com adresine iletirseniz sayfayı gözden geçirir ve düzeltmeyi geçmişe işleriz.

Kaynaklar ve güncelleme geçmişi

Kaynaklar

  1. web.dev: Largest Contentful Paint (LCP), Google (web.dev)Resmî kaynak
  2. MDN: HTMLCanvasElement.toBlob(), Mozilla (developer.mozilla.org)Resmî kaynak
  3. Google Search Central: Görsel SEO en iyi uygulamalar, Google (developers.google.com)Resmî kaynak

Bu sayfayı paylaşın

Aynı işi elle yapan bir işletme sahibine gönderin.