Poprawnie – format SVG to grafika wektorowa. SVG (Scalable Vector Graphics) jest oparty na XML i opisuje obraz za pomocą figur geometrycznych: linii, krzywych, prostokątów, okręgów, wielokątów oraz tekstu. Dzięki temu obraz nie składa się z pikseli, tylko z równań matematycznych, więc można go dowolnie skalować bez utraty jakości – logo w SVG będzie równie ostre na wizytówce, jak i na ogromnym billboardzie czy ekranie 4K. To jest właśnie główna przewaga grafiki wektorowej nad rastrową. Moim zdaniem w świecie webowym SVG to dzisiaj standard dla ikon, logotypów, prostych ilustracji, wykresów czy schematów. Przeglądarki traktują SVG jako natywny format wspierany przez specyfikację W3C, można go osadzać bezpośrednio w kodzie HTML (inline) albo jako zewnętrzny plik. Co ważne, elementy SVG da się stylować za pomocą CSS i animować przy użyciu CSS lub JavaScript, co daje ogromne możliwości w interfejsach użytkownika i nowoczesnych stronach WWW. W praktyce dobrym podejściem jest używanie SVG wszędzie tam, gdzie grafika ma być skalowalna, lekka i ostra na różnych urządzeniach: responsywne ikony menu, grafiki w interfejsie aplikacji webowych, piktogramy, infografiki. Dodatkowo SVG często ma mniejszy rozmiar pliku niż odpowiednik PNG w wysokiej rozdzielczości, zwłaszcza gdy obraz składa się głównie z prostych kształtów. Z mojego doświadczenia to jeden z kluczowych formatów, które warto dobrze ogarnąć, jeśli myśli się poważnie o grafice komputerowej i front-endzie.
W tym pytaniu łatwo się pomylić, bo wszystkie podane formaty są popularne w internecie, ale tylko jeden z nich jest wektorowy. Kluczowa różnica to sposób przechowywania obrazu. Grafika rastrowa zapisuje informację o każdym pikselu, a wektorowa opisuje kształty za pomocą równań matematycznych. To fundamentalne, bo wpływa na skalowanie, jakość i zastosowanie w praktyce. Formaty JPG, GIF i PNG to typowe formaty grafiki rastrowej. JPG (JPEG) jest używany głównie do zdjęć i skomplikowanych obrazów z wieloma kolorami oraz przejściami tonalnymi. Stosuje kompresję stratną, więc zmniejsza rozmiar pliku kosztem jakości. Przy powiększaniu obraz JPG zaczyna się „pikselizować”, czyli widać pojedyncze piksele i artefakty kompresji. To kompletnie inny świat niż grafika wektorowa. GIF to również format rastrowy, dosyć stary, obsługujący ograniczoną liczbę kolorów (do 256). Kojarzy się głównie z prostymi animacjami w internecie, ale nadal operuje na siatce pikseli. Nie nadaje się do skalowalnych ikon czy logotypów, bo po powiększeniu traci ostrość. PNG z kolei jest rastrowym formatem bezstratnym, świetnym do zrzutów ekranu, interfejsów, grafiki z przezroczystością. Mimo że jakość PNG jest bardzo dobra, obraz dalej pozostaje nieprzystosowany do dowolnego skalowania bez utraty ostrości. Typowym błędem jest myślenie, że skoro GIF czy PNG są używane w interfejsach, ikonach i elementach stron, to muszą być „wektorowe”. W praktyce to po prostu dobrze wyglądające bitmapy w określonej rozdzielczości. Kiedy zwiększymy rozmiar, widać piksele. Grafika wektorowa, jak SVG, zachowuje ostrość niezależnie od skali. Dlatego przy pytaniach o formaty wektorowe warto zawsze z tyłu głowy mieć tę prostą zasadę: JPG, GIF, PNG – raster; SVG – wektor (w kontekście WWW). Zrozumienie tej różnicy bardzo pomaga później przy projektowaniu layoutów, doborze formatów i optymalizacji grafiki na stronach.