SVG (Scalable Vector Graphics) je standardizovaný formát pro vektorovou grafiku založený na XML, vyvinutý konsorciem W3C (World Wide Web Consortium). Používá se pro popis 2D grafiky (včetně animací) a je vhodný pro webové aplikace.
Hlavní vlastnosti SVG:
Textově založený formát:
- SVG soubor je čitelný jako text, což umožňuje jeho snadnou úpravu ručně nebo pomocí skriptů.
- Grafika je definována pomocí elementů XML (např.
<circle>
,<path>
,<rect>
).
Škálovatelnost:
- Jelikož SVG je vektorový formát, zachovává kvalitu při jakémkoliv měřítku.
Podpora webu:
- SVG je nativně podporováno v moderních prohlížečích a lze jej snadno začlenit do HTML nebo CSS.
Animace a interaktivita:
- SVG podporuje animace a umožňuje interaktivitu pomocí JavaScriptu.
Menší velikost:
- Díky tomu, že SVG ukládá grafiku jako text, může být výsledný soubor velmi malý.
Hlavní rozdíly mezi PostScript a SVG:
Vlastnost | PostScript (PS/EPS) | SVG |
---|---|---|
Struktura | Programovací jazyk (PostScript je Turingovsky úplný). | XML-based formát, deklarativní popis grafiky. |
Použití | Tisk a sazba (tiskárny, DTP systémy). | Webová grafika, interaktivní vizualizace. |
Škálovatelnost | Ano, díky vektorové grafice. | Ano, přirozeně škálovatelné. |
Animace a interaktivita | Není podporováno. | Podporuje animace a interaktivní funkce. |
Podpora softwaru | Specifický software (Adobe, tiskové systémy). | Moderní prohlížeče, snadno čitelné skripty. |
Standardizace | Adobe standard. | Otevřený standard W3C. |
Konverze z PostScript/EPS/AI do SVG
1. Použití nástrojů v Linuxu
Existuje několik nástrojů pro konverzi PostScript nebo EPS do SVG:
a) Inkscape
Inkscape je open-source editor vektorové grafiky, který podporuje konverzi EPS/AI do SVG:
Instalace:
sudo apt install inkscape
Konverze příkazem:
inkscape input.eps --export-filename=output.svg
b) pstoedit
Tento nástroj převádí PostScript/EPS na SVG:
Instalace:
sudo apt install pstoedit
Konverze:
pstoedit -f svg input.eps output.svg
c) Ghostscript a SVG Export
Ghostscript může převést PostScript na SVG pomocí skriptů:
Instalace:
sudo apt install ghostscript
Použití přímo:
gs -dBATCH -dNOPAUSE -sDEVICE=svg -sOutputFile=output.svg input.ps
2. Použití Pythonu
Python může využít knihovny pro manipulaci s PostScriptem a SVG. Příklady:
a) Pomocí svgwrite a externích nástrojů
Python s knihovnou svgwrite:
Instalace:
pip install svgwrite
Použití externích nástrojů jako Ghostscript nebo pstoedit (volání pomocí subprocess).
b) Automatizace Inkscape
Pomocí subprocess:
import subprocess
def convert_eps_to_svg(input_file, output_file):
subprocess.run(["inkscape", input_file, "--export-filename=" + output_file])
convert_eps_to_svg("input.eps", "output.svg")
c) Přímá konverze přes knihovny (pro AI)
Knihovny jako pyvips nebo Pillow mohou být využity k načtení souboru .ai a jeho konverzi do SVG, ale podpora je omezená. Externí nástroje jsou spolehlivější.
Doporučený postup
- Pro běžnou konverzi EPS/AI do SVG na Linuxu doporučuji Inkscape nebo pstoedit.
- Pokud chcete konverzi automatizovat, použijte Python a externí nástroje (např. Ghostscript nebo Inkscape přes
subprocess
). - Pro AI soubory může být nutné použít Adobe Illustrator nebo Inkscape (podpora AI v open-source nástrojích není vždy úplná).
Žádné komentáře:
Okomentovat