Aufmacher Artikel

Nachgezeichnet

potrace wandelt Pixelbilder in Vektorgrafiken um

12.07.2007
Vektorgrafiken haben gegenüber Pixelbildern einen großen Vorteil: Sie sind frei skalierbar, ohne dass beim Vergrößern hässliche Treppenstufen und Riesenpixel entstehen. Doch was tun, wenn ein Bild nur im Pixelformat vorliegt? Das Tool "potrace" hilft.

Große Pixel zerstören jedes noch so schöne Bild – sie entstehen, wenn ein Bild nur in niedriger Auflösung vorliegt und mit einem Grafikprogramm hochskaliert werden. Grafikprofis versuchen daher, weitgehend auf den Einsatz von Pixelgrafiken zu verzichten: Stattdessen arbeiten sie mit Vektorgrafiken, die nicht aus Pixeln bestehen, sondern Beschreibungen der auf dem Bild sichtbaren Objekte enthalten, z. B. geometrische Figuren oder Schrift.

Vektorgrafiken haben gleich mehrere Vorteile:

  • Die einzelnen Elemente, aus denen sie bestehen, verschieben oder entfernen Sie bei Bedarf, und Texte bleiben auch nach dem Speichern und Wiederöffnen frei veränderbar.
  • Die ganze Grafik ist beliebig skalierbar: Wollen Sie das Bild in Postergröße ausdrucken, ist das kein Problem.

Arbeiten Sie stattdessen mit Pixelbildern, müssen Sie immer ein möglichst hoch auflösendes Original erstellen und dieses dann auf die benötigten Größen runter skalieren – stets in der Hoffnung, dass Sie nicht eines Tages eine noch höhere Auflösung benötigen.

Ausweg aus der Pixelfalle

Doch wenn Sie schon einen großen Bestand an Pixelgrafiken haben oder ein im Internet gefundenes, niedrig aufgelöstes Bild verwenden wollen, haben Sie noch eine Chance: Ein Vektorisierer durchsucht Pixelbilder nach Mustern und erstellt daraus eine Vektorgrafik. Dieser Prozess ist – abhängig von der Quelldatei und vom benutzten Tool – mehr oder weniger erfolgreich. Für Linux übernimmt das Programm potrace[1] diese Aufgabe. Sie installieren das Tool wie üblich von der Heft-DVD oder suchen bei Bedarf auf der Webseite nach einer aktuelleren Version.

Ein erstes Beispiel macht deutlich, was potrace leistet: Abbildung 1 zeigt einen Screenshot des Webbrowsers Opera, der die EasyLinux-Startseite anzeigt. Das rechte Bild enthält einen kleinen, hoch skalierten Ausschnitt dieses Screenshots: Deutlich erkennt man hier die Rasterung und die Treppenstufen.

Abbildung 1: In der Vergrößerung wird es deutlich: Pixelgrafiken sind nicht skalierbar.

Da potrace nur Dateien in den Formaten bmp, pnm, pbm, pgm und ppm akzeptiert, steht zunächst eine Konvertierung in eines dieser Bildformate an – dafür eignet sich convert[2]. In der einfachsten Form benötigt potrace nur einen Dateinamen als Argument und erzeugt dann automatisch eine Ausgabedatei im EPS-Format, aus bild.pnm wird also bild.eps. Über die Option -o ist es möglich, einen alternativen Namen anzugeben.

convert screenshot.png screenshot.pnm
potrace screenshot.pnm -o test1.eps

Das Resultat sehen Sie in Abbildung 2 links – oben die vollständige Grafik und unten eine Ausschnittsvergrößerung. Auf den ersten Blick wirkt das schon recht brauchbar, die Details zeigen aber, dass zum Beispiel die Buchstaben "f" und "t" stark verunstaltet sind.

Abbildung 2: Solche Vektorgrafiken erzeugt "potrace" – links ohne Optimierung, rechts mit vorheriger Skalierung durch "mkbitmap".

Optimierung

Um bessere Ergebnisse zu erzielen, nutzen Sie das Programm mkbitmap, das zum Lieferumfang des potrace-Pakets gehört: Es konvertiert das Ausgangsbild mit vielen Einstellungsmöglichkeiten vor dem potrace-Aufruf. Meist reicht es schon aus, das Bild zunächst ein wenig zu vergrößern: Das verbessert zwar nicht die Details (genau das ist ja das Problem mit den Pixeln), aber potrace kann mit dem höher aufgelösten Bild besser umgehen.

Im folgenden Beispiel vergrößert mkbitmap das Bild um den Faktor 2 und setzt gleichzeitig (mit -t 0.5) einen Grenzwert (0,5) für Grauwerte im Bild, die noch als schwarz gelten sollen:

mkbitmap -s 2 -t 0.5 screenshot.pnm -o test2.pbm
potrace test2.pbm -o test2.eps

Im Idealfall sind die Bilder, die Sie potrace übergeben, reine Schwarz-Weiß-Grafiken. Für das Konvertieren in dieses Format können Sie statt mkbitmap auch ein anderes Tool verwenden. Das Ergebnis dieser Optimierung sehen Sie in der rechten Hälfte von Abbildung 2 – schon in der Gesamtdarstellung wirken die Buchstaben ausgeglichener, und das Detailbild zeigt, dass die vorher problematischen Buchstaben "f" und "t" jetzt die richtige Form haben.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Bitmap- in Vektorgrafiken unwandeln
    Wer glatte Linien kantigen Pixeln vorzieht, findet in Vektorbildern die passende Ausdrucksform. Dahin führen von der eingescannten Vorlage verschlungene Wege. Wir stellen Programme vor, die die Vektorisierung übernehmen und dabei optisch ansprechende Ergebnisse liefern.
Kommentare

Infos zur Publikation

title_2015_01

Digitale Ausgabe: Preis € 9,80
(inkl. 19% MwSt.)

EasyLinux erscheint vierteljährlich und kostet EUR 9,80. Weitere Informationen zum Heft finden Sie auf der EasyLinux-Homepage.

Das EasyLinux-Jahresabo mit Prämie kostet ab EUR 33,30. Details zum EasyLinux-Jahresabo finden Sie im Medialinx-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!      

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 2 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

Neue SuSE-Literatur
Roland Welcker, 14.01.2015 14:10, 1 Antworten
Verehrte Linux-Freunde, seit Hans-Georg Essers Buch "LINUX" und Stefanie Teufels "Jetzt lerne ich...
DVD abspielen unter openSUSE 13.1
Michael Pfaffe, 12.01.2015 11:48, 6 Antworten
Hallo Linuxer, Bisher habe ich meine DVD´s mit linDVD unter openSUSE abgespielt. Mit der Versi...
Kontrollleiste SuSE 12.3 gestalten
Roland Welcker, 31.12.2014 14:06, 1 Antworten
Wie bekomme ich das Icon eines beliebigen Programms (aktuell DUDEN) in die Kontrollleiste und kan...
flash-player
roland reiner, 27.12.2014 15:24, 7 Antworten
Mein Flashplayer funktioniert nicht mehr-Plug in wird nicht mehr unterstütz,auch über google chro...
PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 10 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...