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 08/2016: Multimedia

Digitale Ausgabe: Preis € 5,99
(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

Wie kann man das berichtigen
Udo Muelle, 17.07.2016 20:39, 1 Antworten
Fehlschlag beim Holen von http://extra.linuxmint.com/dists/rosa/main/binary-i386/Packages Hash-S...
Installation Genimotion
Horst Müller, 15.07.2016 17:00, 1 Antworten
Hallo, ich kann Genimotion nicht installieren. Folgende Fehlermeldung habe ich beim Aufruf erh...
Probleme beim Hochfahren der Terastaion 5400 mit Unix-Distrib
Sheldon Cooper, 10.07.2016 09:32, 0 Antworten
Hallo ihr lieben, habe seit zwei Tagen das Problem, das das NAS (Raid5) nicht mehr sauber hoch...
Mit Firewire Videos improtieren?
Werner Hahn, 09.06.2016 11:06, 5 Antworten
Ich besitze den Camcorder Panasonic NV-GS330, bei dem die Videos in guter Qualität nur über den 4...
lidl internetstick für linux mint
rolf meyer, 04.06.2016 14:17, 3 Antworten
hallo zusammen ich benötige eure hilfe habe einen lidl-internetstick möchte ihn auf linux mint i...