Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Portable Anymap – Wikipedia
Portable Anymap – Wikipedia
aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Portable Pixmap)

Portable Anymap (abgekürzt PNM) ist eine Familie von einfachen Dateiformaten zur Speicherung von Rastergrafiken.

Zu den PNM-Formaten gehören die Dateiformate:

  • Portable Bitmap (PBM),
  • Portable Graymap (PGM) und
  • Portable Pixmap (PPM)

Der Aufbau des Dateikopfs aller drei Dateiformate ist identisch. Die Bilddaten unterscheiden sich im Wertebereich bzw. der Wortbreite und können als dezimal kodierte Werte im ASCII-Format oder binär kodiert vorliegen.

Geschichte

[Bearbeiten | Quelltext bearbeiten]

Die PNM-Formate wurden in den 1980er Jahren zur einfachen Übertragung von Bitmaps zwischen verschiedenen Rechnersystemen entwickelt. Zusammen mit dem später entwickelten Dateiformat PAM (Portable Arbitrary Map) bilden die PNM-Formate die Familie der Netpbm-Formate.

Dateiformat

[Bearbeiten | Quelltext bearbeiten]

Kopfdaten

[Bearbeiten | Quelltext bearbeiten]

Der Dateikopf ist folgendermaßen aufgebaut:

  1. Magischer Wert, 2 Byte: Kennzeichnet das Format der Bilddaten
  2. Leerraum
  3. Breite des Bilds in Pixeln (dezimal in ASCII kodiert)
  4. Leerraum
  5. Höhe des Bilds in Pixeln (dezimal in ASCII kodiert)
  6. Leerraum

Bei Graustufen- (PGM) und Farbbildern (PPM) zusätzlich noch:

  1. Maximalwert für die Helligkeit (dezimal in ASCII kodiert)
  2. Leerraum

Gültiger Leerraum ist eine Zeichenkette aus einem oder mehreren der folgenden Zeichen: Leerzeichen, Tabulator, Wagenrücklauf (carriage return) und Zeilenvorschub (line feed).[1] Bei binärer Kodierung der Bilddaten muss der letzte Leerraum am Ende des Dateikopfs aus genau einem Zeichen bestehen.

Außerdem können noch Kommentare im Dateikopf untergebracht werden. Ein Kommentar beginnt mit einem Doppelkreuz (#) und wird durch ein Zeilenvorschub- oder Wagenrücklaufzeichen beendet. Ein Kommentar wird wie Leerraum behandelt.

Zulässige Werte für den Dateityp (Magic Number) sind:

Magic Number Dateityp Kodierung
P1 Portable Bitmap ASCII
P2 Portable Graymap ASCII
P3 Portable Pixmap ASCII
P4 Portable Bitmap Binär
P5 Portable Graymap Binär
P6 Portable Pixmap Binär

Das später entwickelte, verwandte Format Portable Arbitrary Map beginnt mit der Magic Number P7.

Bilddaten

[Bearbeiten | Quelltext bearbeiten]

Auf den Kopfbereich folgen die eigentlichen Bilddaten in Form von Helligkeitswerten der einzelnen Pixel bzw. für jeden Farbkanal eines Pixels, entweder dezimal in ASCII oder binär kodiert. Die Werte werden zeilenweise angegeben, beginnend mit der obersten Pixelzeile, und in einer Zeile von links nach rechts. Die Reihenfolge der Farbwerte eines Pixels ist Rot, Grün, Blau.

Zulässige Wertebereiche für die Farb- bzw. Helligkeitswerte sind:

Dateityp maximaler Wertebereich Bits je Pixel bei Binärkodierung
Portable Bitmap 0 und 1 1 Bit
Portable Graymap 0 … 255 bzw. 0 … 65535 8 Bit bzw. 16 Bit
Portable Pixmap 0 … 255 bzw. 0 … 65535 24 bzw. 48 Bit

Bei Speicherung im ASCII-Format wird jeder Bildpunkt als Dezimalzahl mit einem Byte je Ziffer (ASCII-Code der Ziffer) gespeichert. Vor und nach jedem Wert muss ein Leerraum stehen (z. B. Leerzeichen oder Zeilentrenner). Eine Zeile sollte nicht länger als 70 Zeichen sein.

Bei binärer Speicherung folgen die Werte unmittelbar auf den Dateikopf und zwischen ihnen stehen keine Trennzeichen. Zeilenumbrüche oder andere Textformatierungen sind nicht erlaubt, denn sie würden als Bildpunkte interpretiert.

Eine Bitmap belegt für jeden Wert eines Pixels nur ein Bit, also beträgt der Platzbedarf ein Byte je acht Pixel. Innerhalb eines Bytes werden die Werte absteigend angeordnet, also das Bit für das erste Pixel an die höchstwertige Position im ersten Byte. Am Ende einer Zeile (am Rand des Bildes) wird mit Nullen aufgefüllt bis ein Byte vollständig ist. Eine weitere Trennung gibt es nicht, die nächste Zeile schließt unmittelbar an. Ein 1-Bit steht für ein schwarzes und ein 0-Bit für ein weißes Pixel.

Bei Graymap oder Pixmap wird ein Helligkeitswert für ein Pixel bzw. einen Farbkanal eines Pixels als ein Byte gespeichert, wenn der Maximalwert kleiner als 256 ist, ansonsten als zwei Byte im Big-Endian-Format.

Beispiele

[Bearbeiten | Quelltext bearbeiten]

Bitmap ASCII kodiert

[Bearbeiten | Quelltext bearbeiten]
P1          #Bitmap
# Beispiel für das Bild des Buchstabens „J“
6 10        #Breite des Bildes, Leerstelle, Höhe des Bildes
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
0 0 0 0 1 0
1 0 0 0 1 0
0 1 1 1 0 0
0 0 0 0 0 0
0 0 0 0 0 0

Bitmap binär kodiert

[Bearbeiten | Quelltext bearbeiten]
P4 #Bitmap binär
# Beispiel für das Bild des Buchstabens „J“
# 0 0 0 0 1 0 0 0  # Byte = 08 (hex)
# 0 0 0 0 1 0 0 0  # Byte = 08 (hex)
# 0 0 0 0 1 0 0 0  # Byte = 08 (hex)
# 0 0 0 0 1 0 0 0
# 0 0 0 0 1 0 0 0 
# 0 0 0 0 1 0 0 0 
# 1 0 0 0 1 0 0 0 
# 0 1 1 1 0 0 0 0 
# 0 0 0 0 0 0 0 0 
# 0 0 0 0 0 0 0 0
#Breite des Bildes, Leerstelle, Höhe des Bildes, danach genau ein Trennzeichen (newline) vor dem binären Teil:
8 10
08 08 08 08 08 08 88 70 00 00  # = 10 Bytes; in dieser Zeile steht jede Zweiergruppe von Hex-Ziffern für ein Byte in der Datei

Dekodiertes Bild:

Graymap

[Bearbeiten | Quelltext bearbeiten]
P2
# Das Wort „FEEP“ in verschiedenen Graustufen (Beispiel von der Netpbm-Man-Page)
24 7
15
0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
0  3  3  3  3  0  0  7  7  7  7  0  0 11 11 11 11  0  0 15 15 15 15  0
0  3  0  0  0  0  0  7  0  0  0  0  0 11  0  0  0  0  0 15  0  0 15  0
0  3  3  3  0  0  0  7  7  7  0  0  0 11 11 11  0  0  0 15 15 15 15  0
0  3  0  0  0  0  0  7  0  0  0  0  0 11  0  0  0  0  0 15  0  0  0  0
0  3  0  0  0  0  0  7  7  7  7  0  0 11 11 11 11  0  0 15  0  0  0  0
0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0

Dekodiertes Bild:

Pixmap

[Bearbeiten | Quelltext bearbeiten]
P3
# Ein Farbbild der Größe 3 × 2 Pixel, maximaler Helligkeit 255.
# Darauf folgen die RGB-Tripel.
3 2
255
255   0   0     0 255   0     0   0 255
255 255   0   255 255 255     0   0   0

Dekodiertes Bild:

Weblinks

[Bearbeiten | Quelltext bearbeiten]
Commons: Portable Anymap – Sammlung von Bildern, Videos und Audiodateien
  • PNM manpage
  • FileFormat.info: PBM, PGM, PNM, and PPM File Format Summary
  • PBM
  • PGM
  • PPM
  • PAM

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. ↑ sourceforge.net Fileformate netpbm
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Portable_Anymap&oldid=256840325“
Kategorien:
  • Datenformat
  • Grafikformat

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id