UltKit

Jak převést PNG do SVG: vektorizace log, ikon a kreseb

PNG do SVG převedete tak, že ho vektorizujete: software seskupí pixely do jednolitých barevných ploch a jejich okraje překreslí jako křivky. U log, ikon, podpisů a perokreseb to funguje velmi dobře, u fotografií, přechodů a drobného textu špatně.

Jonas WeberJonas WeberRedaktor výkonu webu
Aktualizováno 12 min čtení
Ruka se stylusem nad tabletem, který leží na otevřené stránce časopisu s mřížkou malých bílých ikon na černém pozadí
Answer

Dá se z PNG vytvořit skutečné, škálovatelné SVG?

Ano, ale vektorizací do křivek, ne pouhým zabalením obrázku. Použijte PNG široké alespoň 1000 px, nastavte počet barev podle počtu plošných barev v návrhu (často 2–8), nebo u perokresby přepněte na černobílou. Před použitím SVG přiblížte a zkontrolujte křivky.

Pixely versus křivky: co převod PNG do SVG skutečně mění

PNG je rastrový obrázek: pevná mřížka pixelů, z nichž každý má barvu a případně průhlednost. Logo 500 × 500 px obsahuje přesně 250 000 těchto čtverečků a nic dalšího, takže jeho zvětšení na velikost plakátu může čtverečky jen zvětšit nebo rozmazat přechody mezi nimi. SVG je vektorový obrázek, textový soubor se seznamem tvarů, například <path>, <circle> a <rect>, se souřadnicemi a barvami výplně. Prohlížeč nebo řezací plotr tyto tvary vykreslí znovu v jakékoli potřebné velikosti, proto vektorové logo zůstane ostré na displeji telefonu i na banneru veletrhu.

Z vektoru na rastr se jde snadno, protože vykreslovač tvary prostě namaluje do pixelů; SVG do PNG to zvládne za vteřinu. Opačným směrem žádná bezeztrátová zkratka neexistuje, protože mřížka pixelů si o tvarech, které ji vytvořily, nic nepamatuje. Něco se musí na pixely podívat a odhadnout, kde který tvar začíná a končí. Tomuto kroku se říká trasování nebo vektorizace a každý poctivý převodník PNG do SVG, od Illustratoru po program v příkazové řádce, je uvnitř trasovač.

Některé převodníky těžkou část přeskočí. Zapíšou platný soubor SVG s jediným prvkem <image>, do něhož je původní PNG vložené jako text base64, čímž je soubor asi o třetinu větší než PNG. Výsledek se otevře jako SVG a projde kontrolou typu souboru, ale pořád je to pixelový obrázek ve vektorovém obalu: po přiblížení uvidíte stejné zubaté hrany a řezací plotr nenajde žádné cesty, po kterých by jel. Otevřete libovolné SVG v textovém editoru a vyhledejte data:image/png; pokud tam tento řetězec je, nic se nevektorizovalo.

MythUložením nebo přejmenováním PNG na .svg vznikne vektor.

FactPřejmenováním se změní jen přípona. Pixely zůstanou pixely a většina aplikací soubor odmítne otevřít.

MythSVG s vloženým PNG je skutečný vektorový soubor.

FactJe to rastrový obrázek uvnitř kontejneru SVG. Bez pixelizace se škálují jen vektorizované prvky <path>.

MythTrasování obnoví detaily, které malé PNG nikdy nemělo.

FactTrasovač sleduje pixely, které dostane. Rozmazaná ikona 64 px se převede na kroucené tvary, které zůstanou kroucené v jakékoli velikosti.

Grafika, která se vektorizuje čistě, a grafika, u které to nikdy nepůjde

Trasování se vyplatí u obrázků, které byly od začátku nakreslené jako tvary. Logo exportované z návrhářské aplikace, plošná ikona, kreslená postavička s černými obrysy, naskenovaný podpis nebo šablona se skládají z několika plných barev oddělených zřetelnými hranami. Trasovač seskupí každou barvu do oblastí, sleduje jejich okraje a vloží podél nich hladké křivky, takže výsledné SVG se blíží tvarům, které původně nakreslil designér. Tučné písmo ve slovním logu se trasuje také dobře, protože velké písmeno je jen další vyplněný tvar a každý znak se stane obrysem, který lze přebarvit nebo zvětšit, ale už ne přepsat.

Fotografie jsou opačný případ. Portrét nebo snímek produktu má tisíce nepatrně odlišných tónů plynule přecházejících do sebe a vektorový formát je neumí efektivně popsat. Požádáte-li trasovač o 16 barev, dostanete posterizovanou ilustraci s viditelnými pruhy; při 64 barvách dostanete desítky tisíc drobných tvarů v souboru mnohem větším než PNG, který stále nevypadá jako fotka. Jemné přechody, vržené stíny a záře se stejným způsobem změní na hromady tenkých pásů. Třetím problémem je drobný text: při 10–12 px vyhlazování hran slévá každé písmeno s pozadím a trasovač nerozezná „e“ od „o“.

Trasuje se čistě

  • Loga a slovní loga s plošnými barvami
  • Ikony, piktogramy a clipart
  • Kresby tuší, omalovánky a komiksy
  • Podpisy a razítka naskenované na bílém papíru

Vyžaduje přípravu

  • Loga s jemným vrženým stínem nebo září
  • Náčrtky tužkou s nerovnoměrnými šedými tahy
  • Snímky obrazovky s logem na rušném pozadí
  • Pixel art, který potřebuje pixelové hrany

Nebude vypadat dobře

  • Fotky lidí, jídla nebo krajiny
  • Obrázky postavené na hladkých přechodech
  • Text menší než asi 14 px
  • Silně komprimované nebo uměle zvětšené obrázky

Dejte vektorizaci lepší PNG jako výchozí podklad

Rozlišení je důležitější než jakékoli nastavení. Trasovač přikládá každou křivku ke schodům pixelů podél hrany a čím jemnější schody, tím věrnější křivka. Pokud jste PNG sami exportovali z Figmy, Canvy, Photoshopu nebo prezentace, exportujte je znovu ve dvou až třech násobcích zobrazované velikosti; logo široké 1500–2000 px dává trasovači dost materiálu. Malé PNG nejdřív nezvětšujte AI zvětšovačem, pokud výsledek při zobrazení 100 % nevypadá čistě, protože vymyšlená textura hran se trasuje stejně věrně jako skutečné hrany.

Dále zjednodušte pozadí. PNG podporuje plnou průhlednost a průhledné pozadí je nejsnazší případ: každý zcela průhledný pixel se bere jako prázdné místo, takže SVG nemá za kresbou bílý obdélník. Pokud má PNG plné pozadí, nejprve těsně oříznete kolem kresby; náš návod jak oříznout obrázek na poměr stran popisuje přesné kadrování. Rušné pozadí, například logo vyfocené na tričku, odstraňte nebo před trasováním přemalujte jednou plnou barvou.

Nakonec snižte počet barev dřív, než to za vás udělá trasovač. Skryjte stíny, záře a překryvy přechodů ve zdrojovém souboru a výplň přechodem nahraďte její střední barvou, pokud ji vektorová verze nepotřebuje. Spočítejte zbylé plné barvy včetně barvy obrysu a číslo si zapište; je to nejužitečnější číslo, které v dalším kroku zadáte. Pokud vybíráte mezi JPEG a PNG téhož loga, vezměte PNG, protože komprese JPEG přidává šum kolem každé hrany, jak vysvětluje článek JPG vs JPEG vs PNG.

  • PNG je široké alespoň 1000 px, u detailního loga ideálně 1500–2000 px
  • Pozadí je průhledné nebo jednobarevné, oříznuté těsně kolem kresby
  • Stíny, záře, textury a přechody jsou skryté nebo zploštěné
  • Víte, kolik plných barev návrh používá, včetně obrysu

Volba barev, vyhlazení a prahu podle vaší grafiky

Každý trasovač se ptá na tytéž tři věci, i když se popisky liší. První je, kolik barev zachovat. V převodníku PNG do SVG volí Barevný režim mezi možnostmi Barevná, Odstíny šedi a Černobílá a Počet barev určuje, do kolika shluků se pixely roztřídí, od 2 do 64. Nastavte hodnotu, kterou jste si zapsali. Příliš vysoká hodnota způsobí, že trasovač rozdělí pixely vyhlazených hran na vlastní tenké barvy, což se projeví slabým lemem kolem každého tvaru; příliš nízká sloučí dvě barvy značky do jedné.

Druhá otázka je, jak zacházet s hranami. Vyhlazení zaoblí schody po pixelech a Detaily určují, jak malá skvrna se ještě stane tvarem. Stránka pro PNG začíná na Detaily 70 a Vyhlazení 40, což u čistého exportu zachová malé rohy. Pokud se objeví prach a zbloudilé tečky, snižte Detaily; pokud jsou křivky roztřesené, zvyšte Vyhlazení. U geometrických log z přímých hran nastavte Křivky na Přímé čáry, u pixel artu, který má zůstat hranatý, na Pixelové hrany.

Třetí otázka platí jen pro černobílé trasování: kde vést hranici mezi inkoustem a papírem. Práh se pohybuje od 1 do 254, výchozí je 128. Pixely tmavší než práh jsou černé, světlejší zůstanou prázdné. U podpisu napsaného tenkou modrou propiskou ho zvyšte k 160–180, aby slabé tahy přežily; u tučné kresby fixou na lehce šedém papíru ho snižte k 100, aby se struktura papíru nezměnila na skvrny. Měňte vždy jedno nastavení a porovnávejte, protože se navzájem ovlivňují.

Výchozí body podle typu kresby; upravujte vždy jednu hodnotu
KresbaBarevný režimBarvy / práhHrany
Jednobarevné logo nebo ikonaČernobíláPráh 128Hladké křivky
Plošné logo se 3–5 barvamiBarevnáPřesný počet barevHladké křivky, Vyhlazení 40
Geometrické logo, přímé hranyBarevnáPřesný počet barevPřímé čáry
Podpis tenkou propiskouČernobíláPráh 160–180Hladké křivky, vyšší Vyhlazení
Náčrtek tužkouOdstíny šedi4–6 odstínů šediNižší Detaily potlačí zrnitost papíru
Pixel artový spriteBarevnáPřesná velikost paletyPixelové hrany
Fotka s efektem plakátuBarevná8–16 barevČekejte stylizovaný výsledek
Tablet na dřevěném stole zobrazující velké písmeno A nakreslené tenkými tahy pera, vedle stylusu, sluchátek a oranžové návrhářské knihy
Foto: Unsplash

Jak posoudit SVG, které dostanete

Nezastavujte se u náhledu. Otevřete SVG v prohlížeči a přibližte na 400–800 % nejtěsnější křivku, například oblouk písmene nebo špičku hrotu. Dobré trasování ukazuje hladké oblouky a ostré rohy tam, kde je návrh má; slabé ukazuje vlnky, promáčkliny a zaoblené špičky. Pak soubor otevřete ve vektorovém editoru, například Inkscape, Illustrator nebo Figma, a zapněte zobrazení obrysů nebo uzlů. Jednoduché dvoubarevné logo obvykle potřebuje několik set uzlů; pokud jich vaše má několik tisíc, trasovač sledoval šum a cesty se budou špatně upravovat nebo řezat.

Rychlou kontrolou je velikost souboru. Optimalizované SVG plošného loga má obvykle několik kilobajtů až několik desítek kilobajtů a často je menší než původní PNG. Vektorizovaný soubor několikanásobně větší než zdrojové PNG obvykle znamená příliš mnoho barev, příliš mnoho detailů, nebo fotku, která se vektorizovat neměla. Nechte zapnuté Optimalizovat SVG, protože zaokrouhluje souřadnice a slučuje cesty bez viditelné změny, a nakonec kresbu zvětšete na velikost plakátu a zmenšete na velikost favicony, abyste ověřili, že je čitelná v obou.

  • Tenké lemy nebo obrysy kolem každého tvaru

    Pixely vyhlazených hran se staly vlastní barvou. Snižte Počet barev o jedna nebo dvě, nebo zvyšte Vyhlazení.

  • Stovky drobných skvrn kolem kresby

    Vektorizoval se šum nebo zrno papíru. Snižte Detaily, nebo vyčistěte pozadí PNG a trasujte znovu.

  • Jemné čáry rozbité na čárky v černobílém režimu

    Tahy jsou světlejší než hranice prahu. Zvyšujte Práh po 15–20, dokud se nespojí.

  • Hranaté rohy vyšly zaoblené

    Vyhlazení je pro tento návrh příliš vysoké. Snižte ho, nebo u geometrických tvarů přepněte Křivky na Přímé čáry.

Inkscape, Illustrator, Potrace nebo prohlížeč

Bezplatnou desktopovou možností je Inkscape. Importujte PNG, vyberte ho a otevřete Cesta > Trasovat bitmapu (Shift+Alt+B). Režimy s jedním průchodem, například Hranice jasu, vytvoří jednu černou cestu, což se hodí na perokresbu; režimy s více průchody trasují zadaný počet barev nebo šedí jako vrstvy nad sebou. Černobílé trasování v Inkscapu stojí na Potrace, trasovací knihovně, kterou v roce 2001 vydal Peter Selinger. Samotné Potrace je program pro příkazovou řádku, který čte PBM, PGM, PPM nebo BMP místo PNG, zvládá jen dvoubarevné obrázky a zapisuje SVG, PDF, EPS nebo DXF, takže je vhodné pro skriptování velkých dávek skenů.

V Adobe Illustratoru nahradilo Image Trace starší Live Trace v Illustratoru CS6. Vložte PNG, otevřete Okno > Image Trace a začněte předvolbou, například Black and White Logo, 3 Colors nebo 16 Colors, a pak upravte Paths, Corners a Noise v pokročilé části. Trasování zůstává živé, dokud neklepnete na Expand, čímž se změní na běžné upravitelné cesty. Pokud nemáte nainstalovaný ani jeden z programů, převodník v prohlížeči provede stejný postup: snížení barev, nalezení hran, proložení křivek; převodník obrázků do SVG přijímá také JPG, WebP a HEIC a místo SVG umí zapsat EPS, PDF nebo DXF.

  • Inkscape Trace Bitmap

    Zdarma pro Windows, macOS a Linux. Režimy s jedním průchodem i vícebarevné, živý náhled, poté plné úpravy cest.

  • Illustrator Image Trace

    Placený, součást Creative Cloud. Předvolby podle typu kresby, poté Expand pro úpravu cest spolu s další vektorovou prací.

  • Potrace

    Zdarma, příkazová řádka, jen dvoubarevný vstup. Nejlepší pro skriptované dávky podpisů, razítek a naskenovaných perokreseb.

  • Převodník v prohlížeči

    Není třeba nic instalovat, až 20 souborů do 95 MB v jedné dávce, nahrané soubory se po 30 minutách smažou.

Kam SVG poputuje dál a kdy si vyžádat zdrojový soubor

Na webu je SVG doporučením W3C od roku 2001 a každý současný prohlížeč ho vykreslí ve značce <img>, jako pozadí v CSS nebo přímo v HTML, kde se jeho barvy mohou měnit třeba po najetí myší. Vektorizované logo obvykle nahradí několik velikostí PNG pro retina displeje jedním malým souborem. U řezacích plotrů je SVG formát, který očekávají Cricut Design Space a Silhouette Studio: každý vektorizovaný tvar se stane řezanou cestou a vícebarevné trasování přijde jako samostatné vrstvy, které lze řezat z vinylu různých barev. Laserové řezačky a software CNC obvykle preferují DXF, které z týchž nastavení trasování vytvoří PNG do DXF.

Tiskárny žádají vektorovou grafiku, protože tiskový stroj, vyšívací digitizér nebo řezač reklam potřebuje hrany, ne pixely, a vektorizované SVG to u samolepek, triček nebo banneru často splní. Pořád jde o aproximaci: křivky jsou odhadnuté, barvy zprůměrované z pixelů a text převedený na obrysy. Než tedy začnete trasovat firemní logo, zeptejte se toho, kdo ho vytvořil. Designér nebo agentura má téměř vždy originál v AI, EPS, PDF nebo SVG s přesnými křivkami, pojmenovanými barvami a fonty a odeslání jim zabere minutu. Trasování je správný nástroj, když je originál ztracený, když logo přežilo jen na naskenovaném hlavičkovém papíru, nebo když jde o vaši vlastní kresbu.

Trasování nemění, komu kresba patří

Převodem loga, postavy nebo ilustrace do SVG vznikne kopie v jiném formátu, ne nový návrh. Trasujte kresby, které vlastníte, máte povolení je používat nebo je máte licencované, a před řezáním či tiskem cizího díla k prodeji zkontrolujte licenci.

Hlavní poznatky

  • Z PNG se skutečné SVG stane jen trasováním; SVG s vloženým PNG je pořád pixelový obrázek.
  • Loga, ikony, podpisy a perokresby s málo plošnými barvami se trasují čistě; fotky, přechody a drobný text ne.
  • Začněte velkým, čistým PNG s průhledným nebo jednobarevným pozadím a znejte přesný počet barev.
  • Před použitím zkontrolujte výsledek při velkém přiblížení, v zobrazení uzlů a podle velikosti souboru.
  • Pokud logo vytvořil designér, požádejte před trasováním kopie o původní vektorový soubor.
SdíletXFacebookWhatsAppTelegram

Často kladené otázky

Jak poznám, zda je soubor SVG skutečný vektor, nebo jen vložený obrázek?

Otevřete ho v textovém editoru. Pokud uvidíte prvky path s dlouhými seznamy souřadnic, jde o vektor. Pokud uvidíte jediný prvek image s data:image/png a za ním dlouhý blok textu, jde o PNG zabalené do SVG.

Ztratí se kvalita, když SVG převedu zpět do PNG?

Ne, pokud ho vykreslíte ve velikosti, kterou potřebujete. Z vektoru lze vytvořit PNG o libovolném počtu pixelů, proto pro každé použití exportujte nové PNG a nezměňujte velikost starého.

Kolik uzlů by mělo mít vektorizované logo?

Pevný limit neexistuje, ale jednoduché ploché logo obvykle potřebuje několik set uzlů. Tisíce uzlů většinou znamenají, že vektorizace sledovala šum. Snižte tedy úroveň detailu nebo počet barev a vektorizujte znovu.

Proč v SVG vidím tenké bílé čáry mezi barevnými tvary?

Tvary, které na sebe navazují hranou k hraně, mohou ukázat tenké mezery, když prohlížeč vyhlazuje každý z nich zvlášť. Vektorizace, která tvary skládá přes sebe, tomu většinou předejde.

Mám tiskárně poslat SVG, nebo PDF?

Zeptejte se, co přijímají. Mnoho tiskáren dává přednost PDF nebo EPS, protože jsou na ně postavené jejich postupy, a oba formáty mohou obsahovat stejné vektorové křivky jako SVG.

Mohu upravit text ve vektorizovaném logu?

Ne jako text. Vektorizace mění písmena na obrysové tvary, takže pokud chcete změnit slovo, musíte určit font, znovu ho napsat ve vektorovém editoru a umístit na místo vektorizovaných písmen.

Čtěte dál