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

  • GeoJSON in EBMap4D

    31.07.2021

    Ich habe die Anwendung EBMap4D einer Generalüberholung unterzogen und neue Features hinzugefügt...

    Weiterlesen

Neueste Artikel

  • Automatische Konvertierung von JavaScript nach Java

    Ich halte mich von den Themen Artificial Intelligence und Machine Learning (Large Language Models) ja fern so gut es geht - vor allem, weil ich das mal studiert habe. Manchmal überkommt mich aber die Neugierde - das Resultat war bisher immer schlechte Laune.

    Weiterlesen
  • OCR Workflow in der sQLshell

    Wie bereits in einem früheren Artikel beschrieben habe verfügt die sQLshell über eine Integration zur Erfassung von Daten aus Dokumentendirekt per Optical Character Recognition. Ich habe diese Integration weiter verfeinert und möchte hier einen exemplarischen Workflow für diese Möglichkeit zeigen

    Weiterlesen
  • Docker-Services im Homelab

    Diese Seite wird mit allen derzeit in meinem Self-Hosting Homelab betriebenen Services auf Docker-Basis befüllt (Eigenentwicklungen werden nicht genannt, sofern sie keine öffentlich verfügbaren Open-Source-Lösungen darstellen).

    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.