New Immissions/Updates:
boundless - educate - edutalab - empatico - es-ebooks - es16 - fr16 - fsfiles - hesperian - solidaria - wikipediaforschools
- wikipediaforschoolses - wikipediaforschoolsfr - wikipediaforschoolspt - worldmap -

See also: Liber Liber - Libro Parlato - Liber Musica  - Manuzio -  Liber Liber ISO Files - Alphabetical Order - Multivolume ZIP Complete Archive - PDF Files - OGG Music Files -

PROJECT GUTENBERG HTML: Volume I - Volume II - Volume III - Volume IV - Volume V - Volume VI - Volume VII - Volume VIII - Volume IX

Ascolta ""Volevo solo fare un audiolibro"" su Spreaker.
CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Portable Network Graphics - Wikipedia

Portable Network Graphics

aus Wikipedia, der freien Enzyklopädie

Dieser Artikel erläutert das Grafikformat. PNG ist auch das Nationalitätskennzeichen von Papua-Neuguinea.
Eine Sonnenblume als PNG-Bild
Eine Sonnenblume als PNG-Bild

PNG [pɪŋ] steht für Portable Network Graphics (engl. portierbare Netzwerkgrafiken) und ist ein Grafikformat für Rastergrafiken. Es wurde als freier Ersatz für das ältere bis zum Jahr 2004 mit Patentforderungen belastete Format GIF entworfen und ist weniger komplex als TIFF. Die Daten werden verlustfrei komprimiert abgespeichert (im Gegensatz zum verlustbehafteten JPEG-Dateiformat).

Inhaltsverzeichnis

[Verbergen]

[Bearbeiten] Eigenschaften und Geschichte

PNG-Datei mit Alphakanal, darstellbar auf jedem Hintergrund
PNG-Datei mit Alphakanal, darstellbar auf jedem Hintergrund
Dasselbe Bild auf einem anderen Hintergrund
Dasselbe Bild auf einem anderen Hintergrund

Das PNG-Format hatte nie Patentbeschränkungen, wie dies bei GIF bis 2004 durch Verwendung des LZW-Algorithmus der Fall war, und konnte daher auch schon vor 2004 kostenlos von jedem gelesen und geschrieben werden. Außerdem besitzen auch nicht CompuServe bzw. seine Rechtsnachfolger ein Urheberrecht an ihm. Es ist ein universelles, vom World Wide Web Consortium anerkanntes Format und wird von modernen Webbrowsern unterstützt.

PNG ist ab 1995 als Ersatz für das damals noch mit Patenten belegte GIF-Format entwickelt worden. PNG wurde jedoch bewusst ohne Animationsfähigkeit wie bei GIF 89a entworfen, da hierfür ein eigenes Format (MNG) entwickelt werden sollte. Die beiden Formate sollten dann zusammen GIF vollständig ersetzen. Dazu kam es jedoch bis heute (März 2007) nicht, da MNG keine W3C-Empfehlung ist und daher von den meisten Webbrowsern nicht unterstützt wird. Als Ersatzformat für GIF 89a etabliert sich daher auf den Websites großer Firmen zunehmend Adobe Flash, das neben Fotos auch Animationen (mit Ton) darstellen kann und so die Fähigkeiten von GIF in allen Bereichen übertrifft.

PNG kann wie GIF Pixel aus einer Farbpalette mit bis zu 256 Einträgen verarbeiten. Darüber hinaus ist die Speicherung von Graustufenbildern mit 1, 2, 4, 8 oder 16 Bit und Farbbildern (RGB) mit 8 oder 16 Bit pro Kanal (also 24 beziehungsweise 48 Bit pro Pixel) möglich. Die Kompressionsrate von PNG ist im allgemeinen besser als bei GIF.

PNG-Dateien können Transparenzinformationen enthalten, entweder in Form eines Alphakanals oder für jede Farbe der Farbpalette. Ein Alphakanal ist eine zusätzliche Information, die für jedes Pixel angibt, wie viel vom Hintergrund des Bildes durchscheinen soll. PNG unterstützt Alphakanäle von 8 oder 16 Bit, was 256 beziehungsweise 65536 Abstufungen der Transparenzstärke entspricht. Bei GIF ist nur möglich, einen einzigen der Paletteneinträge als vollständig transparent zu deklarieren. Das PNG-Format erlaubt somit, unabhängig vom Hintergrund die Kanten von Text und Bildern zu glätten. Man kann echte Schlagschatten verwenden, die im Hintergrund ausblenden oder Bilder erzeugen, die beliebig geformt sind - wenn das Programm zur Anzeige der Bilder PNG-fähig ist.

Der Internet Explorer für Windows hat bis zur Version 6 Probleme mit der Darstellung von PNG-Dateien mit Alphakanal. PNG-Dateien mit binärer („ja/nein“-)Transparenz werden jedoch fehlerfrei dargestellt. Es gibt auch Umgehungslösungen zur Nutzung des Alphakanals in älteren Versionen des Internet Explorers (siehe Weblinks). Die neuesten Versionen der Browser Mozilla Firefox, Konqueror, Safari, Opera, Internet Explorer für Macintosh sowie die aktuelle Version 7 des Windows Internet Explorer für Windows unterstützen PNG weitgehend fehlerfrei.

PNG unterstützt Metadaten und optionale Datenblöcke („Chunks“), die weitere Informationen über das Bild enthalten können, etwa zur Farbkorrektur. Diese Datenblöcke werden durch vier Buchstaben gekennzeichnet (beispielsweise tEXt für textuelle Informationen) und können mit Programmen wie TweakPNG[1] bearbeitet werden.

Die Geschichte von PNG begann verglichen mit anderen Grafikformaten wie TIFF, GIF und JPEG erst sehr spät. Die Entwicklung von PNG begann Ende 1994, als die Softwarefirma Unisys begann, für den von GIF verwendeten LZW-Algorithmus Lizenzgebühren einzufordern.
Bereits am 4. Januar 1995 konnte Thomas Boutell einen ersten Entwurf (PBF Draft 1) vorlegen. Die erste richtige PNG-Spezifikation (Version 1.0) von Thomas Boutell und Tom Lane wurde am 1. Oktober 1996 offizielle W3C-Empfehlung. Am 14. Oktober 1996 erhielt PNG von der IANA den MIME-Typ image/png zugewiesen. Am 15. Januar 1997 wurde PNG von der IETF als RFC 2083 verabschiedet. Am 31. Dezember 1998 erschien die von Adam Costello und Glenn Randers-Pehrson überarbeitete PNG-Spezifikation Version 1.1. Am 11. August 1999 veröffentlichte Glenn Randers-Pehrson schließlich die bisher letzte Version 1.2. Diese wurde am 10. November 2003 zum ISO-Standard ISO/IEC 15948:2003 erhoben und gleichzeitig zur W3C-Empfehlung PNG (Second Edition).

Jedoch unterstützten die meisten Webbrowser PNG zu dieser Zeit noch nicht, sodass PNG erst seit 2005/2006 GIF-Bilder in nennenswertem Umfang ersetzen konnte.

[Bearbeiten] Technische Details

[Bearbeiten] Vorfilter

Bild:PNG-Gradient.png

Ein PNG-Bild mit 256 Farben, das dank Vorfilter nur 269 Byte groß ist. Das gleiche Bild als GIF-Datei wäre mehr als zwölfmal so groß.

Um die Kompression der Bilddaten zu verbessern, unterstützt das PNG-Format verschiedene sogenannte Vorfilter, die auf die Bilddaten angewendet werden, bevor die eigentliche Komprimierung stattfindet.

In vielen Bildern unterscheiden sich benachbarte Pixel nur wenig voneinander. Das bedeutet, dass die Differenzwerte dieser Pixel vom Betrag her recht klein sind. Werden nun statt der originalen Pixeldaten die Differenzwerte zu den vorangegangenen Pixeln verarbeitet, treten oft Folgen gleicher Werte auf; große Änderungen kommen nur relativ selten vor (etwa an Objektkanten). Dies begünstigt die Komprimierbarkeit der Daten und ist einer der Gründe für die geringe Größe von PNG-Dateien.

PNG definiert in der derzeitigen Version fünf verschiedene Filtertypen:

Nummer Name Beschreibung
0 None Keine Vorfilterung. Es wird auf den originalen Pixeldaten gearbeitet
1 Sub Es werden die Differenzen zu dem jeweils links benachbarten Pixel verarbeitet
2 Up Es werden die Differenzen zu dem jeweils darüber liegenden Pixel verarbeitet
3 Average Es wird die Differenz zu dem Mittelwert aus dem darüber liegenden und dem links benachbarten Pixel gebildet
4 Paeth Es wird aus dem links benachbarten, dem darüber liegenden und dem schräg links oben benachbarten Pixel ein sogenannter Paeth-Predictor-Wert berechnet, welche den Pixel für die Differenzbildung bestimmt

Die verschiedenen Filter werden unabhängig voneinander auf jede Bildzeile angewandt; oft wählt das Anwendungsprogramm automatisch eine Filterkombination aus. In vielen Fällen bietet der Paeth-Predictor die besten Ergebnisse. Der vierte Filtertyp wurde nach seinem Erfinder Alan W. Paeth benannt.

Beim Entpacken werden nach der Dekomprimierung der Daten umgekehrte Versionen der Filter angewandt, um die eigentlichen Bilddaten wiederherzustellen.

[Bearbeiten] Komprimierung

Nach dem Vorfiltern (siehe Filtertypen) werden die Daten mit dem verlustlosen Deflate-Algorithmus komprimiert. Dieses Verfahren wurde für das ZIP-Archivformat entwickelt und findet auch im gz-Format des Archivprogramms gzip und im Bildformat TIFF Verwendung. Bislang ist Deflate die einzige unterstützte Methode. Es ist aber absichtlich Raum für Erweiterungen gelassen worden, um in zukünftigen PNG-Versionen auch andere, effizientere oder schnellere Algorithmen zu unterstützen. Um Abwärtskompatibilität zu existierenden PNG-fähigen Programmen zu gewährleisten, ist derzeit eine Aufnahme anderer Verfahren in den Standard jedoch nicht geplant.

Obwohl die Komprimierungsmethode von PNG deutlich leistungsfähiger ist als bei GIF, speichern viele Programme PNG-Dateien nicht optimal ab, was zu unnötig großen Dateien führt. Verschiedene Programme, wie beispielsweise OptiPNG, pngcrush oder andere[2], ermöglichen eine verlustfreie Neukomprimierung und oft wesentlich kleinere Dateien.

[Bearbeiten] Verwandte Formate

  • MNG (Multiple-image Network Graphics) speichert Animationen.
  • JNG (JPEG Network Graphics), ein Unterformat von MNG, unterstützt den verlustbehafteten Teil von JPEG als Kompressionsverfahren.
  • APNG (Animated Portable Network Graphics) unterstützt Animation, ist aber zu PNG abwärtskompatibel. Reine PNG-Dekoder zeigen nur das erste Bild der Animation.

Weder MNG, JNG, noch APNG sind W3C-Empfehlungen.

[Bearbeiten] Vorteile

PNG

  • ist lizenzkostenfrei.
  • komprimiert verlustfrei und dabei meist kompakter als vergleichbare Formate.
  • unterstützt wie das JPEG-Format Echtfarben (24 Bit Farbtiefe), Maximum ist 48 Bit Farbtiefe.
  • unterstützt „echte“ Transparenz (Alpha-Transparenz mit bis zu 16 Bit, also 65.536 Stufen).
  • unterstützt Farb- und Helligkeitskorrekturmechanismen, die sicherstellen, dass ein Bild auf verschiedenen Systemen annähernd gleich aussieht.
  • unterliegt einem festen Standard und ist erweiterbar, so dass theoretisch jedes Programm bestimmte Mindestanforderungen erfüllen muss. Außerdem ist PNG sowohl aufwärts- als auch abwärtskompatibel, was Inkompatibilitäten zwischen verschiedenen Versionen reduziert.
  • ermöglicht außerdem das Abspeichern zusätzlicher Information in der Grafikdatei, zum Beispiel Autoren- und Urheberhinweise.
  • ermöglicht (durch integrierte Prüfsummen), Fehler in der Datei frühzeitig zu erkennen.
  • ist streamable, d. h. zur Interpretation des Dateiinhalts ist kein wahlfreier Zugriff wie etwa bei vielen TIFF-Dateien notwendig.
  • verfügt über ein optionales 7-Pass-Interlacing nach Adam M. Costello ("Adam7"), also den allmählichen Bildaufbau bei der Ãœbertragung über langsame Datenleitungen wie etwa im Internet. Dabei treten weniger Bildverzerrungen auf als bei GIF. Schon bei sehr geringer Ãœbertragung ist bereits eine relativ brauchbare Darstellung möglich.

[Bearbeiten] Nachteile

PNG

  • bietet keine Möglichkeit zur Animation wie das GIF-Format. Hierzu wurde das MNG-Format geschaffen, welches jedoch bislang keine nennenswerte Verbreitung erreicht hat. Des Weiteren gibt es mit APNG ein Format, das Animation ermöglicht, gleichzeitig aber insofern zum PNG-Format abwärtskompatibel ist, als PNG-Dekoder das erste Bild der Animation anzeigen.
  • wird von einigen Browsern nur teilweise unterstützt; einige zeigen PNG-Dateien, insbesondere mit Alphakanalinformationen, fehlerhaft an.[3] Auch der verbreitete Internet Explorer für Windows hat erst seit der im Oktober 2006 erschienenen Version 7 volle Alphakanalunterstützung. Bei dem Vorgänger sind wie bei GIF jedoch auch hier Ja-Nein-Transparenzen möglich, sodass im Vergleich zu GIF in dieser Hinsicht auch bisher kein echter Nachteil entstand. Zur besseren Handhabung der PNG-Bilder mit älteren Versionen des Internet Explorers kann man einige Workarounds benutzen.[4][5][6]
  • wird von vielen Bildbearbeitungsprogrammen nicht optimal abgespeichert, was oft zu erheblich größeren Dateien als nötig führt.
  • ermöglicht nicht das einfache Laden von Bildteilen. Wer nur einen Ausschnitt des Bildes laden möchte, muss alle Bildzeilen davor mitladen. Im Falle von PNG-Dateien, die nicht sequentiell, sondern interlaced gespeichert wurden, muss sogar noch mehr geladen werden.
  • unterstützt zwar eingebettete Metainformationen, die aber weder dem EXIF- noch dem IPTC-Standard entsprechen.
  • erreicht bei bestimmten Bildarten wie Fotos naturgemäß nicht die Kompressionsraten verlustbehafteter Algorithmen wie etwa JPEG. Auch im Vergleich zu auf bestimmte Klassen von Bilddaten spezialisierten Algorithmen, etwa nur für gescannte Dokumente, kann PNG meist nicht mithalten.

[Bearbeiten] Literatur

[Bearbeiten] Weblinks

[Bearbeiten] Quellen

  1. ↑ Jason Summers: TweakPNG, englisch
  2. ↑ Cosmin Truţa: A guide to PNG optimization, mit Verzeichnis von Programmen zur verlustfreien Neukomprimierung, englisch
  3. ↑ Jason Summers: Eine Serie von Tests für PNG-unterstützende Browser, englisch
  4. ↑ Lloyd Dalton: CSS-basierter Workaround für Alpha-Transparenz im Internet Explorer, englisch
  5. ↑ Bob Osola: JavaScript-basierter Workaround für Alpha-Transparenz im Internet Explorer, englisch
  6. ↑ Dean Edwards: Freies IE7-Toolkit von zum Darstellen von transparenten PNGs im Internet Explorer, englisch

Static Wikipedia (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2006 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia February 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu