Viele bunte Bildchen

Recht einfach zu vielen hübschen Icons kommen die meisten Windows-Benutzer, indem sie die Datei pifmgr.dll aus dem Windows-System-Verzeichnis in ein eigenes Verzeichnis auf dem Linux-Rechner kopieren. Mit dem Befehl

[andi@gemini test]$ wrestool -l pifmgr.dll
--type=14 --name=1 [type=group_icon offset=0xb280 size=48]
--type=14 --name=2 [type=group_icon offset=0xb5a0 size=32]
[…]
--type=5 --name=106 [type=dialog offset=0x13030 size=480]
[…]

erhalten sie eine Liste aller Ressourcen der Datei. Interessant ist vor allem Typ 14 (group_icon), da sich dahinter die Icons verbergen. Andere Inhalte, etwa Dialogboxen, listet wrestool zwar auf, kann sie aber nicht entpacken. Um die Icons zu extrahieren, geben Sie folgenden Befehl ein:

wrestool -x --output=. -t14 pifmgr.dll

Wie der . als Argument zum Output-Parameter festlegt, landen alle gefundenen .ico-Dateien durchgehend nummeriert als pifmgr.exe_t14_1.ico, pifmgr.exe_t14_2.ico etc. im aktuellen Arbeitsverzeichnis. Wählt man einen anderen Pfad, muss man den unbedingt mit einem / am Ende abschließen, wenn das Zielverzeichnis noch nicht existiert.

icotool -x @L: *.ico

wandelt nun alle .ico-Dateien ins PNG-Format um. Sofern Sie Ihren Datei-Manager (etwa Nautilus oder den Konqueror) so konfiguriert haben, dass er Ihnen eine Bildvorschau präsentiert, bietet sich Ihnen nun ein Anblick wie in Abbildung 1.

Abbildung 1: Die aus pifmgr.dll extrahierten Icons mit Nautilus betrachtet

icotool, mit dem Parameter -c (für "create") aufgerufen, erstellt aus einer oder mehreren .png-Dateien Icons, z. B.

icotool -c -o meinfavicon.ico mein_bild1.png mein_bild2.png

Die Datei meinfavicon.ico dient dabei als eine Art Container, der eine beliebige Anzahl Bilder (hier mein_bild1.png und mein_bild2.png) aufnimmt. Man nutzt diese Eigenart des Dateiformats hauptsächlich, um das gleiche Bild in mehreren Farbtiefen und Größen in einer Datei zu speichern.

Extraktionsmaschine

Da das Extrahieren der Icons aus ausführbaren Dateien zwei Arbeitsschritte benötigt und man danach meistens noch die nun überflüssigen .ico-Dateien loswerden will, lohnt sich ein Skript, das alle Arbeitsschritte zusammenfasst (Listing 1 zeigt als Beispiel eines mit Namen iconextract). Dieses legen Sie in einem Verzeichnis im Suchpfad ab. Der Aufruf erfolgt in der Form

iconextract tolle_icons.dll

Die extrahierten Bilder legt iconextract mit durchnummerierten Namen im aktuellen Arbeitsverzeichnis ab.

Eigentlich ist extresso für diese Aufgabe vorgesehen, allerdings gibt es bislang zu wenig vorgefertigte Resourcefiles, die für bekannte .dll und .exe-Dateien festlegen, was wohin extrahiert werden soll. Die vorhandenen (z. B. win98_pifmgr für pifmgr.dll von der Heft-CD) versehen die extrahierten Bilder mit aussagekräftigen Dateinamen. Kopieren Sie diese Ressourcen-Datei in das Verzeichnis, das auch pifmgr.dll enthält. Rufen Sie in diesem Arbeitsverzeichnis den Befehl

extresso win98_pifmgr --base=. --output=.

auf. Der erste Parameter nennt das zu verwendende Resourcefile; --base legt fest, wo extresso nach pifmgr.dll suchen soll (dem Punkt nach also im aktuellen Verzeichnis). Die extrahierten PNG-Dateien finden Sie, wie in win98_pifmgr angegeben, in einem neuen Unterverzeichnis namens ms unterhalb des Arbeitsverzeichnisses.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 10/2016: Kryptographie

Digitale Ausgabe: Preis € 0,00
(inkl. 19% MwSt.)

LinuxUser erscheint monatlich und kostet 5,95 Euro (mit DVD 8,50 Euro). Weitere Infos zum Heft finden Sie auf der Homepage.

Das Jahresabo kostet ab 86,70 Euro. Details dazu finden Sie im Computec-Shop. Im Probeabo erhalten Sie zudem drei Ausgaben zum reduzierten Preis.

Bei Google Play finden Sie digitale Ausgaben für Tablet & Smartphone.

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

Aktuelle Fragen

Soundkarte wird erkannt, aber kein Ton
H A, 25.09.2016 01:37, 2 Antworten
Hallo, Ich weiß, dass es zu diesem Thema sehr oft Fragen gestellt wurden. Aber da ich ein Linu...
Scannen nur schwarz-weiß möglich
Werner Hahn, 20.09.2016 13:21, 2 Antworten
Canon Pixma MG5450S, Dell Latitude E6510, Betriebssyteme Ubuntu 16.04 und Windows 7. Der Canon-D...
Meteorit NB-7 startet nicht
Thomas Helbig, 13.09.2016 02:03, 3 Antworten
Verehrte Community Ich habe vor Kurzem einen Netbook-Oldie geschenkt bekommen. Beim Start ersch...
windows bootloader bei instalation gelöscht
markus Schneider, 12.09.2016 23:03, 1 Antworten
Hallo alle zusammen, ich habe neben meinem Windows 10 ein SL 7.2 Linux installiert und musste...
Ubuntu 16 LTE installiert, neustart friert ein
Matthias Nagel, 10.09.2016 01:16, 3 Antworten
hallo und guten Abend, hab mich heute mal darangewagt, Ubuntu 16 LTE parallel zu installieren....