SVG -> Icon

vorhergehende Artikel in: GUI
30.04.2013

Von Hand Icons aus SVG-Graphiken zu erzeugen mag machbar sein, wenn man eine Graphik hat und diese in eine festgelegte Auflösung exportieren möchte. Hat man jedoch mehrere Graphiken und als Ziel verschiedene Auflösungsstufen, wünscht man sich schnell einen Automatismus.

Dieses Ziel kann man natürlich mit Software erreichen, die man zu Hauf im Web findet. Aber ich hatte noch eine weitere Randbedingung, die über das bloße Konvertieren von SVG nach Bitmap hinausging: Beim Rendern in verschiedenen Auflösungsstufen gehen unter Umständen Details verloren: Ist eine Graphik für eine Auflösung von 48x48 Pixeln vorgesehen und enthält sie Linien, die nur einen Pixel breit sind, werden diese Linien beim Erzeugen einer Bitmapgraphik verschwinden, die nur 32x32 Pixel groß ist.

Daher habe ich unter Zuhilfenahme von Batik einen Konverter geschrieben, der das Ausgangsdokument untersucht und zu dünne Linien entsprechend "verdickt", daß sie im Resultat mindestens 1 Pixel breit sind - dadurch gehen feine Details auch auf niedrigeren Auflösungsstufen nicht verloren!

Beispiel

Hier ein Beispiel dafür: aus untenstehendem SVG-Dokument wurden Bitmaps verschiedener Auflösungen produziert...
DB_export_archive.svg

Screenshots

24x24 Pixel
32x32 Pixel
48x48 Pixel
1:1 aus SVG
128x128 Pixel

Artikel, die hierher verlinken

SVG -> Icon II

08.01.2016

Ich habe das Werkzeug zum automatischen Erzeugen von Bitmap-Icons in verschiedenen Größen aus einem SVG-Master weiter verfeinert: es ist nun möglich, Teile der Graphik beim Erstellen der Bitmaps auszublenden.

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Multi-User-WebDAV, Docker, GitHub

    17.11.2019

    Nachdem ich mich in letzter Zeit verstärkt mit Docker und dem zugehörigen Ökosystem beschäftige, habe ich begonnen, verschiedenste Dienste in Containern zu testen um zu sehen, ob in manchen Fällen LXC oder KVM nicht doch die bessere Wahl wäre...

    Weiterlesen...

Neueste Artikel

  • Migration der Webseite und aller OpenSource Projekte

    In eigener Sache...

    Weiterlesen...
  • AutoHideToolbar für Java Swing

    Ich habe eine neue Java Swing Komponente erstellt: Es handelt sich um einen Wrapper für von JToolBar abgeleitete Klassen, die die Werkzeugleiste minimieren und sie nur dann einblenden, wenn der Mauszeiger über ihnen schwebt.

    Weiterlesen...
  • Integration von EBMap4D in die sQLshell

    Ich habe bereits in einem früheren Artikel über meine ersten Erfolge berichtet, der sQLshell auf Basis des bestehenden Codes aus dem Projekt EBMap4D eine bessere Integration für Geo-Daten zu spendieren und entsprechende Abfragen, bzw. deren Ergebnisse auf einer Kartenansicht zu visualisieren.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.