Kapitel 17
Grafik
512
Erläuterung:
#1: Ein PhotoImage-Objekt für das Hintergrundbild wird generiert und auf den Canvas
self.c in die linke obere Ecke gesetzt.
#2: Für die Positionierung weiterer grafischer Komponenten auf den Canvas werden private
Methoden aufgerufen.
#3: Auf den Canvas wird ein Window mit dem Button-Widget self.ok gesetzt.
#4: Beschriftung des Säulendiagramms.
#5: Das Säulendiagramm besteht aus einem statischen weißen Rechteck, auf dessen unte-
ren Teil sich ein dynamisches blaues Rechteck befindet.
#6: Nach einem Klick auf den Button wird in dieser Methode die Höhe des dynamischen
blauen Rechtecks – genauer gesagt, die
y-Komponente des linken oberen Eckpunktes – auf
einen Wert gesetzt, der aus dem aktuellen Zahlenwert des
Entry-Feldes (Kontrollvariable
self.t) berechnet wird (fett).
17.3.3 Hintergrund: Das PPM-Format
Es gibt nur wenige Bildformate, die für PhotoImage-Objekte verwendet werden können.
Eines davon ist PPM (Portable Pixmap). Dieses Format für Rastergrafiken gibt es in zwei
Versionen: ASCII und binär.
Eine PPM-Datei im ASCII-Format ist lesbarer Text, den Sie mit einem einfachen Texteditor
(oder IDLE) bearbeiten können. Ein PPM-Dokument besteht aus einem Kopf, der das For-
mat definiert, und einem Körper mit den Pixel-Informationen. Hier ist ein einfaches Bei-
spiel, das eine winzige Rastergrafik aus 16 Bildpunkten (Pixel) darstellt:
Der Kopf ist folgendermaßen aufgebaut:
Kennung P3 für das ASCII-Format
Bildbreite und Bildhöhe
Maximaler Wert für eine Farbkomponente eines Pixels
self.c.coords( self.innen, '5.5c', 140-2*t, '5.8c', 190)
t = Thermometer()
P3
4 4
255
# Rastergrafik mit 16 Bildpunkten
0 0 0 100 100 100 100 100 100 0 0 0
255 255 255 100 100 100 0 255 0 255 255 255
0 0 0 100 100 100 0 0 0 255 255 255
0 0 0 100 100 100 0 0 0 0 0 0

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.