Poslední aktualizace: 24 června 2026

Moderní webové aplikace silně spoléhají na grafiku pro ikony, loga, obrázky, grafy, animace a interaktivní vizuální prvky. Výběr správné grafické technologie je důležitý, protože ovlivňuje škálovatelnost, výkon, odezvu, přístupnost a uživatelskou zkušenost.
Tři z nejčastěji používaných možností jsou SVG (Scalable Vector Graphics), PNG (Portable Network Graphics) a HTML Canvas. Ačkoli všechny tři jsou schopny zobrazovat vizuální obsah, výrazně se liší v tom, jak renderují grafiku a kde dosahují nejlepších výsledků.
V tomto průvodci podrobně porovnáme SVG, PNG a Canvas, zdůrazníme jejich výhody, omezení a ideální případy použití.
Co je SVG?
SVG (Scalable Vector Graphics) je formát vektorové grafiky založený na XML, vyvinutý W3C. Na rozdíl od pixelových obrázků používá SVG matematické cesty a tvary, což umožňuje grafice nekonečně se škálovat bez ztráty kvality.
SVG se široce používá pro:
- Loga
- Ikony
- Ilustrace
- Mapy
- Grafy
- Infografiky
Protože SVG je založené na textu, lze jej snadno manipulovat pomocí CSS a JavaScriptu.
Hlavní charakteristiky SVG
- Formát založený na vektorech
- Struktura XML
- Nekonečná škálovatelnost
- Malé velikosti souborů pro jednoduchou grafiku
- Podpora CSS a JavaScriptu
- Přátelské k SEO a přístupnosti
Co je PNG?
PNG (Portable Network Graphics) je rastrový formát obrázků, který ukládá grafiku jako pixely. Je široce používán díky bezztrátové kompresi a podpoře průhlednosti.
PNG se běžně používá pro:
- Snímky obrazovky
- Obrázky produktů
- Průhledná pozadí
- Detailní ilustrace
- UI prvky
Na rozdíl od SVG ztrácejí PNG obrázky kvalitu při zvětšení, protože jsou závislé na rozlišení.
Hlavní charakteristiky PNG
- Rasterový formát obrázku
- Bezeztrátová komprese
- Podpora průhlednosti
- Vynikající kompatibilita s prohlížeči
- Vhodné pro detailní obrázky
- Závislé na rozlišení
Co je Canvas?
Canvas je HTML5 prvek, který umožňuje dynamicky generovat grafiku pomocí JavaScriptu.
Na rozdíl od SVG kreslí Canvas pixely přímo na bitmapový povrch, což z něj činí vysoce efektivní nástroj pro vykreslování animací a interaktivní grafiky.
Canvas se široce používá pro:
- Prohlížečové hry
- Aplikace pro kreslení
- Vizualizace dat
- Editory obrázků
- Simulace
- Interaktivní efekty
Hlavní charakteristiky Canvas
- Grafické API založené na HTML5
- Pixelově orientované vykreslování
- Vysoký výkon
- Vynikající podpora animací
- Řízené JavaScriptem
- Vhodné pro dynamickou grafiku
SVG vs PNG vs Canvas: Rychlé srovnání
| Funkce | SVG | PNG | Plátno |
|---|---|---|---|
| Typ grafiky | Vektor | Raster | Raster |
| Škálovatelnost | Nekonečný | Omezený | Omezený |
| Ztráta kvality při změně velikosti | Ne | Ano | Ano |
| Podpora průhlednosti | Ano | Ano | Ano |
| Styly CSS | Nativní | Ne | Ne |
| Interakce JavaScriptu | Vynikající | Omezené | Vynikající |
| Podpora animací | Dobré | Omezené | Vynikající |
| SEO přátelské | Ano | Střední | Ne |
| Přístupnost | Vynikající | Střední | Omezené |
| Nejlepší pro fotografie | Ne | Ano | Střední |
| Renderování v reálném čase | Střední | Ne | Vynikající |
| Výkon dynamické grafiky | Střední | Dobré | Vynikající |
Porovnání přístupů k vykreslování
Vykreslování SVG
Grafika SVG je vykreslována pomocí DOM prohlížeče. Každý tvar, čára a cesta se stává samostatným prvkem, který lze stylovat a manipulovat s ním.
Výhody
- Nezávislé na rozlišení
- Snadno animovatelné
- Přístupné
- Přátelské pro vyhledávače
Omezení
- Výkon se snižuje u vysoce složitých grafik
- Velké SVG soubory mohou být obtížně spravovatelné
Vykreslování PNG
PNG obrázky jsou předrenderované bitmapové obrázky, které prohlížeče zobrazují přímo.
Výhody
- Vysoká kvalita obrazu
- Vynikající podpora průhlednosti
- Ideální pro detailní grafiku
Omezení
- Větší velikosti souborů
- Škálování způsobuje ztrátu kvality
- Nelze manipulovat pomocí CSS
Vykreslování Canvas
Canvas používá okamžitý režim vykreslování. Grafika je kreslena přímo na bitmapový povrch pomocí JavaScriptu.
Výhody
- Extrémně rychlé vykreslování
- Ideální pro animace
- Efektivní pro tisíce objektů
Omezení
- Žádné DOM prvky
- Omezená přístupnost
- Není SEO přátelský
Pohled vývojáře
Proč vývojáři upřednostňují SVG
SVG poskytuje:
- Nekonečná škálovatelnost
- Podpora stylování CSS
- Interaktivita JavaScriptu
- Výhody SEO
- Podpora přístupnosti
Je ideální pro:
- Ikony
- Loga
- Infografiky
- Grafy
- Mapy
- Uživatelská rozhraní
Proč vývojáři upřednostňují PNG
PNG nabízí:
- Bezeztrátová kvalita obrazu
- Podpora průhlednosti
- Široká kompatibilita
- Vynikající podpora detailních obrázků
Je běžně používáno v:
- Katalogy produktů
- Snímky obrazovky
- UI aktiva
- Grafické designové projekty
Proč vývojáři upřednostňují Canvas
Canvas poskytuje:
- Vysoký výkon vykreslování
- Schopnosti grafiky v reálném čase
- Manipulace na úrovni pixelů
- Podpora animací
Obvykle se používá v:
- Prohlížečové hry
- Aplikace pro bílou tabuli
- Editor obrázků
- Vědecké simulace
- Interaktivní vizualizace
Výkon
SVG
Silné stránky:
- Lehký pro jednoduchou grafiku
- Vynikající odezva
- Malé velikosti souborů
Slabé stránky:
- Výkon se snižuje při tisících prvcích
PNG
Silné stránky:
- Vynikající kvalita obrazu
- Spolehlivá podpora prohlížečů
- Snadné vykreslování
Slabé stránky:
- Větší velikosti souborů
- Vyžaduje více rozlišení
Canvas
Silné stránky:
- Vynikající rychlost vykreslování
- Plynulé animace
- Vynikající pro interaktivní grafiku
Slabé stránky:
- Omezení přístupnosti
- Zvýšené využití CPU pro složité scény
Kdy zvolit SVG
SVG je dobrá volba, když:
- Ikony a loga jsou vyžadovány.
- Responsivní design je důležitý.
- Přístupnost je důležitá.
- SEO je prioritou.
- Interaktivní grafika je potřeba.
Kdy zvolit PNG
PNG je ideální, když:
- Je vyžadována vysoká kvalita obrazu.
- Jsou zapojeny podrobné grafiky.
- Podpora průhlednosti je nutná.
- Snímky obrazovky je třeba zachovat.
Kdy zvolit Canvas
Canvas je ideální, když:
- Animace jsou vyžadovány.
- Vyvíjejí se prohlížečové hry.
- Musí být vykresleny tisíce objektů.
- Je potřeba schopnost úpravy obrázků.
- Vizualizace v reálném čase jsou důležité.
SVG vs PNG vs Canvas: Která možnost vyhrává?
Neexistuje žádný univerzální vítěz.
Zvolte SVG, pokud:
✅ Škálovatelnost je důležitá.
✅ Přístupnost má význam.
✅ Potřebujete ikony a ilustrace.
Zvolte PNG, pokud:
✅ Kvalita obrazu je prioritou.
✅ Jsou zapojeny podrobné grafiky.
✅ Podpora průhlednosti je vyžadována.
Zvolte Canvas, pokud:
✅ Výkon je kritický.
✅ Je vyžadováno renderování v reálném čase.
✅ Vytváříte animace nebo hry.
Pro většinu responzivních webových aplikací je SVG obvykle preferovanou volbou pro UI grafiku, zatímco PNG zůstává ideální pro detailní obrázky a Canvas dominuje scénářům animace a interaktivního renderování.
Závěr
SVG, PNG a Canvas slouží každé k jinému účelu v moderním webovém vývoji. SVG vyniká ve škálovatelnosti a responzivitě, PNG poskytuje vynikající kvalitu obrazu pro detailní grafiku a Canvas nabízí vyšší výkon pro dynamické renderování a animace.
Místo toho, aby byly vnímány jako konkurenční technologie, mnoho moderních webových aplikací kombinuje všechny tři, aby dosáhlo nejlepšího poměru mezi výkonem, kvalitou a flexibilitou. Výběr správné možnosti nakonec závisí na požadavcích vaší aplikace, cílových zařízeních a cílech uživatelského zážitku.
Často kladené otázky
1. Jaký je rozdíl mezi SVG, PNG a Canvas?
A: SVG je formát vektorové grafiky, PNG je formát rastrových obrázků a Canvas je HTML5 API pro dynamické renderování grafiky.
2. Který grafický formát je nejlepší pro responzivní webové aplikace?
A: SVG je obecně nejlepší volbou pro responzivní rozhraní, protože se škáluje bez ztráty kvality.
3. Kdy by měli vývojáři použít Canvas místo SVG?
A: Canvas je ideální pro hry, animace a aplikace, které vyžadují vysoce výkonné renderování v reálném čase.
4. Je PNG lepší než SVG pro fotografie?
A: Ano. PNG je vhodnější pro detailní obrázky a fotografie, protože SVG je primárně určen pro vektorovou grafiku.
5. Lze SVG, PNG a Canvas použít společně ve stejné aplikaci?
A: Ano. Mnoho moderních webových aplikací kombinuje SVG, PNG a Canvas, aby využilo silné stránky každé technologie.