JPG’i PNG 24 ile ve GIF’i PNG 8 ile dövüştürüyorum
Yazar: Volkan Görgülü | Yayın Tarihi:
26 Eylül 2008 | Yorumlar:
30 Yorum
Kategori: Optimizasyon
Öncelikle bilmeyen arkadaşlar için hemen belirtmek istiyorum, iki adet PNG formatı var, biri, içerdiği renk sayısından dolayı, JPG formatına yakın olan PNG 24 bit diğeri ise yine içerdiği renk sayısından dolayı GIF formatına yakın olan PNG 8 bit.
Bu değerli bilginin ardından, artık paylaşımıma başlayabilirim. Arkadaşlar bu paylaşımımda birbirine denk olan formatları dövüştürerek, webde kullandığımız resimleri veya grafikleri, en iyi kalite ve en düşük boyutta kullanmak için hangi formatı kullanmamız gerektiğini sizlere göstermeye çalışacağım.
Diğer bir deyişle, nasıl?, üretimlerimizin maliyetini düşük, kalitesini yüksek tutarız onu göreceğiz.
Başlamadan Önce
Evet, ölümcül dövüşlere başlamadan önce, bu dosya türleri hakkında sizlerle paylaşmak istediğim bilgiler var.
- Yukarıda da bahsettiğim gibi 2 adet PNG türü var, PNG 24 bit ve PNG 8 bit.
- PNG 24, IE 6 da sorun çıkartıyor, PNG 8 sorun çıkartmıyor. Ama bu durum için bir çok çözüm var.
- GIF’in animasyon oynatabilme özelliği var, PNG ya da JPG de bu özellik yok.
- Çok renkli resimler ya da grafikler için JPG ve PNG 24, az renkli grafikler, simge, ikon vs, için GIF ya da PNG 8 kullanıyoruz.
- Transparanlıkda ihtiyacımız olan 1 renk ise GIF’in ya da PNG 8′in matte özelliğini kullanabiliriz ama kusursuz bir transpanlığa ihtiyacımız varsa kesinlikle PNG 24 kullanmalıyız.
Çok Önemli İki Bilgi Daha
JPG Hakkında
Arkadaşlar yıllardan beri tasarım işleri ile uğraşanların bile JPG formatında resmi kaydederken kalite değeri olarak hep 100′ü seçtiğini gördüm. Oysa aşağıdaki resimde de görebileceğiniz gibi 80 kalite değerini seçtiğiniz zaman, dosya boyutunun düşmesine rağmen, gözle görülür bir fark bulmak çok zor, hatta 60′ı seçtiğimiz zaman bile dosya boyutunun çok daha düşmesine rağmen, çok dikkatli bakınca bir fark görebiliyorsunuz.

Kısacası kalite olarak 100′ü seçmeye gerek yok, duruma göre 80 ve 60 tercih edilmeli.
GIF ve PNG 8 Hakkında
Photoshop’ta, bir grafiği GIF olarak kayıt edeceğimiz zaman direk Colors bölümünde 256 seçili olarak gelir. Ben de uzun bir süre GIF lerimi hiç sorgulamadan direk 256 renk ile kayıt ettim.
Ama yakın bir geçmişte, resimde de görebileceğiniz gibi orada 256′nın dışında 128, 64, 32 gibi daha az renk sayısı kullanabileceğimi gördüm ve yaptığım denemelerde, grafiklerde daha az renk kullandığımda gözle görülür bir bozulma olmadığını ve dosya boyutunun 256 renkli haline nazaran daha azaldığını gördüm ve aynı durum PNG 8 için de geçerli.

İzin verin size bir örnek göstereyim

Yukarıdaki resimde görebileceğiniz gibi 256 Renk ve 128 Renk ile kaydedilen GIF ler arasında gözle görülür farklar yok ama boyuttan ne kadar tasarruf ediyoruz değil mi? Ve evet 64 renkte gözle görülür bozulmalar başlıyor ama en azından bu durum bu grafik için böyle daha az renge sahip grafiklerde, net bozulmalara rastlamadan, çok daha az renk kullanabiliriz, denemeler yapmak lazım.
Artık Dövüşler Başlasın
Küçük bir simgede, GIF, PNG 8′e karşı

Gördüğünüz gibi bu ilk musabakada, 285 bytlık bir fark ile GIF galip geliyor ve gördüğünüz gibi kalite olarak gözle görülür bir fark yok.
Büyük bir simgede, GIF, PNG 8′e karşı

Tekrar 220 bytelık bir fark ile GIF galip geliyor. Ama burada esas dikkat çekmek istediğim nokta, PNG 24′ün transparanlık konusunda kusursuz olduğu.
Normal bir resimde, JPG, PNG 24′e karşı

Arkadaşlar gördüğünüz gibi JPG bu tip bir resimde PNG 24′ü 174 KB lık bir fark ile deyim yerindeyse ezip geçiyor. JPG’in kalitesini 80′e ve 60′a çekebildiğimizi de hatırlarsak fazla bir söze gerek kalmıyor.
Geçişli renklere sahip bir grafikte, GIF, PNG 8′e karşı

PNG 8 ilk defa GIF’i alt ediyor ve 1505 bytelık bir fark atıyor. Ama işin ilginç yanı ise PNG 24′ün 436 byte gibi bir boyut ile hem GIF’i hem de PNG 8′i alt etmesi.
Bu durum üzerine başka geçişli grafikler ile de aynı testi yaptım ve sonuç değişmedi. PNG 24 inanılmaz boyutlara düşürdü grafiği.
Bu Testler Sonucunda Neler Öğrendik
- Transparanlık konusunda PNG 24 bir numara
- Gradient dediğimiz renk geçişli grafiklerde birinci PNG 24, ama PNG 24 kullanmak istemessek, IE6 sorunundan dolayı, PNG 8 GIF karşısında üstün
- Normal resimlerde 80% ya da 60% kalitede JPG en iyi çözüm ve zaten JPG sadece normal resimlerde başarılı.
- Simgelerde, ikonlarda, kısacası az renkli grafiklerde GIF, PNG 8 karşısında üstün.
Şöyle Bir Durum Var
Arkadaşlar sizlerde lütfen bu konudaki tecrübelerinizi paylaşın yorum bölümü aracılığı ile sunduğum bilgilerde yanlışlarım varsa söyleyin. Veya siz hangi durumlarda hangi formatı neden kullanıyorsunuz bundan bahsedin, lütfen. Bu test sonuçlarına katılıyormusunuz, katılmıyormusunuz?
Bu Arada
RSS yayınıma hala üye olmadıysanız, çok darılırım ![]()
Başka bir paylaşımımı inceleyebilirsiniz
« Position: Relative ve Position: Absolute’u Beraber Kullanmak
Düşüncelerinizi duymaya ihtiyacım var!
Zamanınızın çok küçük bir bölümünü ayırarak, bu form aracılığı ile yazı hakkındaki düşüncelerinizi paylaşabilirsiniz.

Yazıya Gelen Yorumlar
1
Oğuzcan Şahin
26 Eylül 2008´de söylemiş
Süper anlatmışsın Volkan. Gerçekten arayüz tasarımlarını CSS tarafına aktarırken sıkıntı çektiğim konulardan biriydi boyutlarından dolayı hep düşündürüyorlardı beni işlerde. Artık düşünmeme gerek kalmadı
.
2
Volkan Görgülü
26 Eylül 2008´de söylemiş
@Oğuzcan, teşekkürler, tabiki önemli olan işte hangi türde resim dosyası için hangi formatı kullanmak gerektiğini bilmek.
3
Oğuzcan Şahin
26 Eylül 2008´de söylemiş
Evet @Volkan özellikle gradient ve transparan grafikler konusunda ben ve bir çok tanıdığım sıkıntı yaşıyordu. Sanırım artık bu sorunları bir çok kişi halletmiş olucak.
Aslında bir de önerim olucak burada ufak bir; Internet Explorer’da sorun çıkartıyor demişsin. Bence bu konuya ek olarak ya da ayrı bir paylaşımla bu sorunun nasıl çözüleceğini göstermek sanırım süper olacaktır.
4
Muhittin
26 Eylül 2008´de söylemiş
Evet ben de Oğuzcan’a katılıyorum. Intenet Explorer’da kusursuz transparanlığın bir çözümü olmalı ve ben bulamadım
Diğer bilgiler için eline sağlık..
5
Salih S. DEMİR
26 Eylül 2008´de söylemiş
Ben şahsen fazla uğraşmamak için PNG 24 ü tercih ediyorum. Belki de IE6 ya inat
Daha önceleri resimleri kaydederken (gif oalrak) feci kalite düşüşü yaşıyordum tabi o zamanlar Photoshop kullanmıyordum. PNG transparanlık ve kalite yönünden GIF e büyük fark atıyordu PNG ye aşık oldum
JPG ve PNG biraz ayrı alanda aslında kıyaslama ihtiyacı duymadım. Bir de animasyon durumunda mecburen GIF kullanıyoruz. PNG belki ileride animasyon da destekler, bekleyelim görelim.
6
müJdaT
26 Eylül 2008´de söylemiş
Ben denedim ve JPG formatında olan resimlerimin çoğunu Gif’e çevirdim, boyut azaldı yükleme hızı arttı. Ayrıca renk ayarları ile resimlerin kalitesini fazla düşürmeden de Gif formatını kullanabildim. Teşekkürler Volkan…
7
Cihan ÖNER
26 Eylül 2008´de söylemiş
Güzel bilgi bunlar.
Teşekkür ederiz hocam
8
emin varol
26 Eylül 2008´de söylemiş
sağolun hocam çok yararlı bigiler…
9
Simto Alev
26 Eylül 2008´de söylemiş
Bundan 10 yıl önce siteye görsel eklemeye bile korkardık. 33.6, 56k bağlantılar vardı. Bir logo, 2-3 ikon ve table’lardan oluşmuş css’siz (a:hover hariç) bir tasarımı görübtülemek bazen 8-10 saniye dahi sürüyordu. Bugünse imajlarla birlikte 100kb civarı, xhtml/css bir tasarımın yüklenmesi 2 veya 3 saniyeyi geçmiyor. (Chrome ve FF ile yükleme süresi artıyor.)
Bu yüzden optimizasyonu da xhtml ağırlıklı yapmak gerek diye düşünüyorum. Mümkün olduğunca tablosuz tasarımlar, akıllıca kodlanmış css’ler işimizi görür.
Eğer 2,3,4 renkten oluşan ve renkler arası geçiş olmayan bir imaj varsa png veya gif yapmak akıllıca. Diğerleri içinse jpg tercih ediyorum. Kaliteyi de duruma göre ayarlıyorum. Bir fotoğrafta %60 değeri gözle görüşür olmasa da text içerikler büyük sorun çıkarır jpg’de.
Ve herkes 100kb veriyi 1 saniyede indirebiliyorken (hadi biz 2 diyelim) bir kaç byte için (toplamda belki 3kb) kaliteden ödün vermeye değmez. İkonlarda, transparan ve az renkli resimlerde png24 kullanmak en hayırlısıdır. (beyaz lekeler olmasa gif de tercih edebilirim)
Bunun harici belirtmek isterim ki bu mesaj bir eleştiri değildir. Yine çok faydalı bir makale olmuş. Yalnızca, ben böyle düşünüyorum.
10
Volkan Görgülü
26 Eylül 2008´de söylemiş
@Simto Alev, öncelikle yorumunuz için teşekkür ederim.
Tabiki tablolu kodlama tekniği ile geliştirilmiş bir site varsa onun için yapılacak en doğru optimizasyon tekniği, siteyi XHTML ve CSS kullanarak geliştirmektir.
Yazı içerikli JPG konusunda ise fikirlerinize katılıyorum, yazıda bozulma oluyor ise tabiki 80% seçilmeli, bir kaç byte ya da kbyte düşünülmemeli.
Tekrar fikirleriniz için teşekkür ederim.
11
ef
26 Eylül 2008´de söylemiş
Gayet net ve anlaşılır anlatmışsın.
Şöylede düşünülebilir basit bi mantıkla
JPG : Renk sayısı fazla ve büyük imajlarda idealdir.
PNG : Transparan imajlarda patlamalar olmaması için idealdir.
GIF : Küçük ve az renk barındıran (pixel,icon…) imajlar için idealdir.
12
Volkan Görgülü
26 Eylül 2008´de söylemiş
@ef, teşekkürler ef, durumu harika bir şekilde özetlemişsiniz.
13
Soner Gülbetekin
27 Eylül 2008´de söylemiş
Eline sağlık Volkan. Yine çok güzel bir karşılaştırma yazısı olmuş.
14
ersin doğanok
27 Eylül 2008´de söylemiş
Eline sağlık Volkan güzel içerik olmuş
15
ilyas TEKER
27 Eylül 2008´de söylemiş
Daha önce hiç böyle ölümcül bir dövüşe tanık olmamıştım. Ama iyi olan kazandı o yüzden içim rahat : )
Yazı enfes olmuş, bir solukta okudum. Detaylı bilgileri öğrenmemi sağladı.
Teşekkürler Volkancığım..
16
tuncay üner
27 Eylül 2008´de söylemiş
Eskiden bağlantılar yavaş olduğu için boyut problemdi gerçekten.(Hatırlıyorumda bir müşterimin sitesi 30sn de açılmıştı; adamın suratı ekşidi biraz tabi
ehehe..)
Fakat şuan bağlantı hızları yerinde olduğu için genelde png24 kullanıyorum.
Ie6′yı ise hiç takmıyorum.
Bunun büyük sebeplerinden biri ise son günlerde bazı ie7 lerin ie6 gibi davranmaya başlaması. Kabusum oldu :S
17
Yucel Eroglu
27 Eylül 2008´de söylemiş
çoook önemli bir olay, benimde http://www.tayyarakdeniz.com‘un giriş sayfasını optimize etmem gerekiyor. Aldık attık direk olmadı, faydalı bilgilerin için teşşekkürler
18
wolkanca
28 Eylül 2008´de söylemiş
macera arayanlarınız için burada jpg in gife özenince ne hale geldiği var (:
19
PTC Master
28 Eylül 2008´de söylemiş
Teşekkürler.
Yine süper bir paylaşım
20
xmRipper
28 Eylül 2008´de söylemiş
“GIF’in animasyon oynatabilme özelliği var, PNG ya da JPG de bu özellik yok.”
Demişsin fakat PNG’in animasyon oynatma özelliği var =)
Al bak örnek;
http://img244.imageshack.us/img244/3549/slideplayfe9.png
Google’a Animated PNG yazıp bir araştır bakalım
21
Burak
28 Eylül 2008´de söylemiş
jpg dosyaları %100 yapma hatasından kurtardın beni volkan abi çok büyük hatadan kurtardın beni
. kendimi işe yaramayan biri zannediyorum ya hiç bir şey bilmiyormuşum ben
22
Şükrü Şükrüoğlu
28 Eylül 2008´de söylemiş
Paylaşım için teşekürler. Bu arada PR4 olmuş siten tebrikler
23
ömer abul
28 Eylül 2008´de söylemiş
merhabalar cok sıkıntı cektıgım bır konuydu. gif lerin boyutunun neden bu kadar buyuk oldugunu hıc cozememistim. demekki bit olayıymıs.. suan ps3 bi deneme yaptım.. cok nadiren o kadar farkedilmeyecek kadar bi bozulma oluor renklerde ama boyut olarak baya bır dusme olayını farkettım.. yazının ıcın tskler..
24
Alp Çoker
30 Eylül 2008´de söylemiş
Gerçekten altın değerinde bilgiler.. Kaliteli olsun diye diye sitelerin boyutunu çok fazla büyütüyormuşuz. Dövüştürmeniz iyi olmuş baya ben dikkatli baksam bile farkı anlayamıyorum ^o^ Paylaştığınız için teşekkürler..
25
Gürsel DEĞERMENCİ
10 Ekim 2008´de söylemiş
Çok güzel bi paylaşım.
Bu yolda tek başına mücadele edenler bu inceliklere yıllarını veriyor.
Eklemek istediğim bi şey küçük logolarda gif png jpeg farketmez corel draw programı hariç hiç bir program verim vermez.
26
Hakan DOLMA
23 Nisan 2009´de söylemiş
Hocam eline sağlık. Açıklamanız çok işime yaradı.. Teşekkürler..
27
Acemi webmaster
12 Mayıs 2009´de söylemiş
Vay be.. Kaliteli olsun diye meğerse işi ne kadar ağırlaştırıyormuşuz.. Hocam transparan gif yapmayıda bir öğretsen.. Kayıt yapınca resmin etrafı beyaz kırıntılı oluyor..
Geri İzlemeler