This is an old revision of the document!
pnm-Bilder
- Installieren Sie GIMP auf der Kommandozeile:
winget install gimp
- Legen Sie ein neues Verzeichnis mit Namen
labyrinthan. Speichern im Folgenden alle Datein in diesem Verzeichnis. - Studieren Sie die Erklärungen zum PNM-Format, speziell das P3-Format (ASCII Portable Pixmap).
- Mit VS-Code, erstellen Sie eine Datei mit Namen
t.pnm - Erstellen in der Datei
t.pnm«von Hand» eine ASCII Portable Pixmap (P3 Format), die ein Farb-Bild mit 3×3 Pixeln enthalten soll. Stellen Sie ein rotes 'T' auf blauem Grund dar. - Speichern Sie Ihre Datei und öffnen Sie diese mit GIMP und vergrössern Sie das Bild, damit die einzelnen Pixel auch gut sichtbar sind.
- Korrigieren Sie allfällige Fehler in Visual Studio Code, speichern Sie die Datei und laden Sie diese neu mit GIMP.
Vorbereitung der Bilder und Export als .pnm mit GIMP
Ziel: Folgendes Bild in der Auflösung 30×30 als Schwarz-Weiss-Bild im .pnm-Format mit Gimp exportieren:
- Öffnen Sie das Herz-Bild mit GIMP. Dazu gibt es verschiedene Möglichkeiten, z.B.
- Kopieren, einfügen.
- Speichern, öffnen.
- Konvertierung zu schwarz/weiss:
- Fügen Sie einen weissen Hintergrund ein:
- Toolbox öffnen mit CtrlB.
- Den weissen Layer nach hinten verschieben, damit das rote Herz wieder sichtbar ist.
- Layer vereinigen: Image → Merge visible Layer oder CtrlM.
- Graustufenbild: Colors → Desaturate → Desaturate
- Grösse anpassen: Image → Scale Image… auf 30×30 Pixel skalieren.
- Als
herz.pnmDatei exportieren: File → Export (oder CtrlE), ASCII-Format wählen. - Öffnen Sie die Datei
herz.pnmin VS-Code. Gibt es in dieser Datei Überraschungen? Woher kommen diese?
Einlesen einer pnm-Datei in Python
- Speichern die Datei pnmbild.py im Verzeichnis
labyrinth. - Öffnen Sie das Verzeichnis
labyrinthin VS-Code (File → Open Folder). - Wenn alles klappt, sollte das Bild als ASCII-Art im Terminal von VS-Code erscheinen.
Das Bild wird automatisch auf schwarz=1/weiss=0 umgerechnet. Das Bild als Liste wird ebenfalls ausgegeben.
Eigenes Bild
Suchen oder entwerfen Sie ein eigenes Bild, das sich als Bild für ein Labyrinth eignet. Am Schluss müssen folgende Bedingungen erfüllt sein:
- Ihr Bild ist als .pnm Bild (ASCII Format) gespeichert.
- Die Auflösung des Bildes sollte zwischen 20×20 und 50×50 sein, ideal ist ein Seitenverhältnis von 8:13 (A4-Blatt mit 2cm Rand).
- Die schwarze Fläche muss vollständig zusammenhängend sein und an mindestens zwei Orten bis an den Rand gehen, idealerweise auf gegenüberliegenden Seiten.
- Die schwarze Fläche darf nicht zu filigran sein und muss überall mindestens 2 Pixel «dick» sein.
- Passen Sie das Python-Programm
pnmbild.pyin den letzten Zeilen (ab ca. Zeile 94) so an, dass Ihr eigenes Bild geladen wird.


