Portál AbcLinuxu, 6. května 2025 09:21
Ne příliš známý, ale přesto velmi schopný vektorový editor umožňující mimo jiné přímé vkládání zdrojového kódu z LaTeXu.
Nedávno jsem si vzpomněl na knihu Kapitoly z diskrétní matematiky od Jiřího Matouška a Jaroslava Nešetřila vydanou vydavatelstvím MatfyzPress. Tato kniha by mohla být zajímavá pro mnoho programátorů, protože diskrétní matematika a algoritmizace k sobě mají velmi blízko. Pro vysázení byl použit systém TeX, což není až tak překvapující - knih vysazených v TeXu nebo v LaTeXu u nás vychází poměrně dost. Daleko zajímavější jsou doprovodné obrázky a to, jak vznikly. Dovolil bych si nyní tuto knihu citovat:
"Konečně jménem lidstva děkujeme Otfriedu Schwarzkopfovi za napsání grafického editoru Ipe, jímž byla vyrobena většina obrázků. Zmíněný editor je názorným dokladem významu matematického vzdělání pro zdánlivě nematematické činnosti, jako v tomto případě psaní složitého software - stačí tento teoretickým informatikem napsaný program porovnat s chaotičností velké části komerčního software."
Protože i já sám jsem se již několikrát potýkal s problémem, jak doplnit TeXovský text ruční vektorovou grafikou, tedy jinou než grafy z Gnuplotu, velmi mě tato poznámka zaujala. Zkoušel jsem již spoustu různých programů, ale nakonec jsem to vždy vzdal a žádný obrázek do textu nedal. Navíc mám rád programy, které se nebojí jít mimo hlavní proud a nabízí vnitřní logiku jako třeba Vim, TeX apod. Začal jsem tedy po tomto editoru pátrat, kde se dalo. Kupodivu není obsažen v žádné distribuci a to ani v Debianu. Nenašel jsem ho ani na www.apt-get.org. Zbýval tedy Google, s jehož pomocí jsem nakonec Ipe našel.
Domovská stránka projektu Ipe je na adrese http://ipe.compgeom.org/. Zde lze stáhnout balíček pro Debian. Máte-li však stable verzi Woodyho, nebude váš systém splňovat závislosti, které jsou nastaveny na vyšší verze balíčků, než jaké jsou nainstalovány. Nezbývá, než si Ipe přeložit ze zdrojáků. Ipe je postaven na knihovně Qt a zřejmě proto nevyužívá autoconf a automake, ale qmake
nebo tmake
. Například v Debianu je obsažen tmake
. Pokud nemáte ani jedno ani druhé, navštivte stránky Trolltechu. Dále budete potřebovat celkem běžné knihovny jako již zmíněná Qt ve verzi 2.3.0 nebo vyšší, zlib pro komprese, Freetype 2 pro práci s fonty a hodí se i pdflatex.
Balíček se zdrojáky rozbalte a proveďte:
cd src |
používáte-li qmake
nebo tmake
:
cd src |
máte-li tmake
. Výsledek překladu je umístěn v adresáři build
. Nakopírování do příslušných adresářů si musí provést každý sám. Práce je to zdlouhavá, proto jsem sepsal následující primitivní skript, který by to měl provést za vás.
#/bin/bash
|
Vraťte se z adresáře src
o jednu úroveň výše, vytvořte soubor pojmenovaný například ipe_install
a uvedené řádky do něj zkopírujte. Pak proveďte
chmod +x ipe_install
|
a jako root skript spusťte. Pokud vše proběhlo dobře, stačí již jen zadat příkaz ipe
a můžete začít kreslit.
Ovládání editoru Ipe je opravdu velmi jednoduché, ale přitom efektivní. Již po pár minutách oťukávání programu jsem byl schopný kreslit celkem obstojné obrázky. Stačí, abyste si přečetli asi polovinu 33 stránkového manuálu a budete umět prakticky vše. I tak se domnívám, že je manuál místy trochu upovídaný, a proto vám nyní nabízím zhuštěný úvodní rychlokurs.
Po spuštění programu máte před sebou žlutý obdélník, což je vaše pracovní plocha. Na levé straně je panel s popisem vrstev. Na něm si hlavně všimněte malého obrázku zástupu tučňáků, to abyste nezapomněli, jaký operační systém je ten nejlepší .
Jak je u vektorových editorů zvykem, lze dokument přibližně popsat jako seznam jednotlivých prvků typu úsečka, kružnice, obdélník, křivka apod. Objekt, který jste vložili naposled, je nejvíce vepředu, takže překrývá všechny ostatní. Toto umístění lze měnit v menu Edit
nebo klávesami Ctrl-B
a Ctrl-F
(front/back).
Jaké objekty lze tady vkládat? Najdete je v menu Mode
počínaje položkou 'Text labels'
. Do dokumentu lze vkládat popisky a matematické vzorce pomocí LaTeXu. Text se na ploše nejprve objeví tak, jak jste ho napsali. Až pomocí 'File - > Run Latex'
nebo Ctrl-L
se provede vysázení. Velikost písma a podobné vlastnosti můžete měnit pomocí příkazů LaTeXu v zadávaném textu nebo na toolbaru. Troufám si říci, že díky tomuto propojení s TeXem nabízí Ipe velmi snadno popisky v kvalitě jinými programy nedosažitelné. Je zřejmě chybou programu, že po zadání popisku je nutné na něj kliknout pravým tlačítkem, jinak program dál reaguje jen částečně - některá menu jsou nefunkční. Další použitelné objekty jsou značky (malá kolečka, křížky a čtverečky), obdélníky a čtverce, kružnice a její výseky, úsečky, polygony a také spline křivky. Na těchto objektech myslím není nic k vysvětlování, přikročíme tedy k operacím s objekty a různým funkcím.
Než použijeme nějakou funkci v Ipe, musíme vybrat objekt, se kterým chceme pracovat. Kliknutím pravým tlačítkem na pracovní plochu označíte nejbližší objekt (musí být ovšem dostatečně blízko). Se stiskem klávesy Shift
můžete pravým tlačítkem k výběru přidávat další objekty. Ten první je označen jako primární, je zvýrazněn červeně. Ostatní patří do sekundárního výběru a jsou zvýrazněny fialově. Opětovným označením již vybraného objektu ho z výběru vyřadíte. Byl-li to primárně vybraný objekt, stane se primárním některý jiný dříve vybraný. Bez shiftu vyberete opět jen jeden primární objekt a ostatní vyřadíte. V menu Edit
jsou pomocné funkce pro výběr všech objektů a všech objektů v dané vrstvě.
Primárně označený objekt lze dodatečně upravovat po stisku Ctrl-E
.
Pomocí prostředního tlačítka na myši lze vybrané objekty přesouvat. Se shiftem posouváte celou pracovní plochu. Se stisknutým Ctrl
a Shift
posouváme objekty pouze vertikálně a horizontálně. Kolečkem myši lze zoomovat.
Velmi důležitou roli má klávesa F1
. Kdykoliv jí stisknete, přesunete počátek souřadnic na současné místo kurzoru. S klávesou Ctrl
a prostředním tlačítkem provádíte rotaci vybraných objektů právě kolem počátku souřadnic. Levé tlačítko s Ctrl
a Shift
slouží ke změně velikosti, bez shiftu provádíme protažení (stretch) v jednotlivých osách. I u těchto funkcí záleží na nastavení souřadnic.
Mnoho užitečných nástrojů najdete v toolbaru. Lze volit barvy pro označené objekty, zvlášť pro vnitřek a obrysy, sílu a styl čar nebo šipky na koncích neuzavřených objektů.
Šikovnou pomůckou je zarovnávání (snap). Lze použít například zarovnání na mřížku, kurzor se pak nepohybuje spojitě, ale poskakuje jen po uzlech čtvercové mřížky. Není pak problém nakreslit přesně například soustředné kružnice s konstantně se zvětšujícím poloměrem. Tzv. kontextové zarovnávání omezuje pohyb kurzoru buď jen na vrcholy, hranice nebo průsečíky objektů. Zarovnávání podle úhlů se vám bude hodit například při kreslení hvězdic nebo podobných objektů. Právě zarovnávání je pro matematické obrázky velmi podstatné, lze se o tom přesvědčit na několika příkladech uvedených v manuálu.
Pomocí Ctrl-G
lze označené objekty slučovat do skupin, takže se pak chovají jako jeden objekt. Ipe dále podporuje vrstvy. Mimo jiné je lze využít například pro prezentace, neboť některé PDF prohlížeče, jako třeba Acrobat Reader, je umí zobrazovat postupně. Pomocí Ctrl-P
lze nastavit volby prezentace - hlavně efekty pro přechody mezi jednotlivými stránkami.
Neméně zajímavé jsou styly. V menu View
lze přepínat mezi symbolickými a absolutními atributy. Standardně jsou zapnuty symbolické. To způsobuje, že nemůžete používat jiné, než předem zvolené barvy, tloušťky a typy čar apod. Hodnoty těchto atributů jsou definovány pomoci XML stylů a dosazují se až při renderování. Díky tomu lze jednoduše měnit vzhled dokumentu záměnou stylu. Naopak absolutní atributy mají konkrétně danou hodnotu. Změna mezi symbolickými a absolutními atributy se týká jen nově vytvořených objektů, takže klidně můžete používat atributy obou typů v jednom dokumentu.
Totéž v PDF.
Ukládáni je vyřešeno také velmi elegantně. Lze použít formát XML, ale také můžete celý dokument uložit jako .ps, .eps nebo .pdf. Přitom jsou v těchto souborech uloženy všechny potřebné informace k tomu, abyste mohli po načtení takovéhoto .ps nebo .pdf pokračovat dál ve své práci. Nesmíte však mezitím tento soubor upravovat jiným programem. Pro další použití obrázku v LaTeXovém dokumentu ho uložte ve formátu .eps. Program automaticky provede oříznutí, takže nebudete vkládat celou stránku. V LaTeXu pak použijete balík graphicx
. Na začátek dokumentu přidáte řádek
\usepackage{graphicx}
|
a pak už jen uvedete některou z následujících možností
|
pro vložení obrázku figure1.eps
.
Pokud zavíráte X-ka a nemáte uložený dokument, Ipe vás na to upozorní a nedovolí X-kám skončit dříve, než uložení potvrdíte nebo zrušíte.
Nakonec Ipe ještě nabízí Ipelety, tedy moduly pro snadné přidávání funkcí. Přístup k nim vede přes nabídku Ipelets
. Jsou tu moduly pro vkládání obrázků, zarovnávání skupiny objektů, zrcadlení, číselně zadané rotace apod. Balík obsahuje i Ipelet pro Voronoiovy diagramy a Delaunayovy triangulace. Lze ho však přeložit jen s dodatečnou knihovnou, kterou se mi nepodařilo stáhnout. Momentálně mě nenapadá, k čemu použít Voronoiovy diagramy při kreslení, snad jen při psaní článků a Voroniových diagramech .
A jaké jsou zápory tohoto editoru? Program mi párkrát spadl, doporučuji tedy často ukládat. Pokud program zavíráte, upozorní vás, že máte dokument uložit. Když jsem však nezadal do názvu koncovku, řekl, že se to musí a pak skončil bez uložení. Menu jsou celkem jednoduchá, ale i tak mi chybí možnost vytáhnout si některé ve zvláštním okně, jak jsem zvyklý z Gimpu. Tvorba stylů ještě není dokončena. Pokud chcete styly používat, musíte prozkoumat .xml soubor s Ipe projektem a k němu si napsat styl ručně. Také mi chyběla možnost zarovnávání ve sférických souřadnicích podle vzdálenosti od středu, což by se myslím dobře hodilo k zarovnávání podle úhlů. Nic z toho ale není podstatná vada.
Ipe je program, na který si zvyknete velmi rychle, a práce s ním je potom tak přirozená, jako kreslení náčrtků tužkou od ruky. Protože pořádně neznám žádný jiný vektorový editor, vyhnu se srovnávání (k tomu se může vyjádřit někdo jiný v diskuzi). Komerční programy mají určitě více funkcí, ale Ipe je navržen hlavně pro tvorbu obrázků do vědeckých článků, kde nepotřebujete pestrobarevné stínované nápisy a podobné efekty. To ale neznamená, že ho nelze použít i jako běžný vektorový editor. Svůj účel splňuje Ipe velmi dobře, a pokud chcete kreslit hlavně technické a matematické obrázky, asi není lepší volby. Ipe existuje také ve verzi pro Windows a Mac OS X.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.