Xfig
Ein alter Freund aus den 80ern
Ich tippe xfig
in die Konsole und sofort erscheint eine GUI, der man ansieht, dass sie in diesem Jahr ihren vierzigsten Geburtstag feiert. Mit xrandr -s 1680x1050
setze ich die Bildschirmauflösung etwas herunter, da die Menüs sonst zu klein sind.
Abbildung 1: Eine kleine Zeitreise – die GUI von Xfig.
Xfig ist ein Klassiker der vektorbasierten Illustration für Unix/Linux-Systeme aus Japan. Bis heute unübertroffen ist aber die hohe Kompatibilität der Export Formate mit LaTeX. Nur ein Beispiel: Mit psfrag können Texte in einer von Xfig exportierten EPS Grafik vom TeX Compiler nachträglich ersetzt werden. So lassen sich zum Beispiel Prüfungsaufgaben sehr einfach individualisieren, ohne die Original-Zeichnung bearbeiten zu müssen. Im folgenden Code-Beispiel werden die Label a und b durch konkrete Längenangaben ersetzt.
\psfrag{a}{$a=$ 30 m} \psfrag{b}{$b=$ 40 m} \includegraphics{./my_img.eps}
Zeichnen
Auf der linken Seite findet man zwei Symbol-Blöcke. Der obere, überschrieben mit (Drawing), erstellt neue Objekte:
- Kreise und Ellipsen
- geschlossene, offene und interpolierte Splines
- geschlossene und offene Polygone
- Boxen, Vielecke und Bögen
- Bilderimport, Text und eine Unmenge von Bibliotheks-Teilen
Abbildung 2: Xfig bietet eine umfrangreichen Bibliothek mit Zeichnungselementen.
Modifizieren
Geändert wird mit dem unteren Symbol-Block (Editing):
- gruppieren, verbinden, lösen, …
- skalieren
- ausrichten und verschieben
- kopieren
- löschen
- spiegeln und rotieren
- messen
Abbildung 3: Mit »Edit« können Objekt-Eigenschaften geändert werden.
Ebenen
Man kann jedes Objekt auf eine Ebene (Depth) legen und diese Ebenen dann am rechten Rand mit den roten Häkchen ein oder ausschalten. So lassen sich Beschriftungen in verschiedenen Sprachen anlegen oder komplexe, techische Zeichnungen organisieren.
Gitter und Fangen
Ganz unten (Grid Mode) können verschiedene Gitter, auch isometrische, gewählt werden. Sobald ein Zeichnungswerkszeug ausgewählt wurde, kann daneben mit Point Posn ausgewählt werden, auf welchem Gitter Punkte gefangen werden. Zeichnungselemente werden über das Drop-Down Menü Snap am oberen Rand gefangen.
Los gehts
Unter Ubuntu 22.04 fehlten leider noch Schriften, die nach sudo apt-get install gsfonts-x11
und einem PC-Neustart in Xfig zur Verfügung standen.
- Eventuell Grid Mode einstellen
- Form zeichnen
- Zeichenwerkzeug im oberen Block wählen
- gegebenenfalls Fangverhalten einstellen Point Posn und Snap
- mit der Maus Punkte setzen, oben rechts im Fenster (Mouse Buttons) werden die gerade aktiven Funktionen erläutert
- Form bearbeiten
- Edit klicken
- Kante der Form anklicken
- Eigenschaften im aufpoppenden Fenster bearbeiten und mit Done abschließen
- Text lässt sich am besten mit der Edit Funktion verändern
- etwas lästig: Umlaute konnte ich nicht direkt, sondern nur über View → Character Map eingeben.
- Speichern und Exportieren
Abbildung 4: Für LaTeX Nutzerinnen und -nutzer besonders interessant: die Exportformate.
Fazit
Mit Inkscape gibt es natürlich zeitgemäßere Open-Source Software für die Vektorillustration. Vielleicht ist es auch etwas geekig, aber ich mag das minimalistische Design der alten Xlib Anwendungen. Gemessen am beanspruchten Plattenplatz von nur 12 MB und seinem Alter ist Xfig erstaunlich mächtig und sicher in der Lage auch im Jahr 2025 noch produktiv die ein oder andere Illustrationsaufgaben zu lösen. Heute noch unübertroffen ist die LaTeX Integration der Export Formate.
Abbildung 5: Gerade etwas minimalistische Designs lassen sich mit Xfig auch heute noch produktiv umsetzen.