Diplomarbeit (PDF, 3,5MB) - Donkeymedia

donkeymedia.eu

Diplomarbeit (PDF, 3,5MB) - Donkeymedia

Farbmanagement im Internet

Diplomarbeit von Thorsten Krug

28. Januar 2006


Zusammenfassung

Farbmanagement nach dem ICC-Standard hat sich in den letzten Jahren in der Druckvorstufe

durchgesetzt. Diese Arbeit untersucht bisherige Ansätze für Farbmanagement im

World Wide Web und analysiert vom W3C entwickelte Empfehlungen für Farbmanagement

im Bereich des cross-media Publishing XML-basierter Sprachen.

Der Text richtet sich an Webentwickler die beabsichtigen, Farbmanagementfunktionen

in ihren Webapplikationen zu verwenden. Im praktischen Teil geht es um die Umsetzung

des Internet-Standard-Farbraums sRGB in Webapplikationen durch serverseitige Bildverarbeitung

und die Auswertung von Informationen über ICC-Profile mittels farbmanagementfähiger

Open Source Software. Entwickler von Webbrowsern die planen, künftige

W3C-Standards in ihren Produkten umzusetzen, finden Informationen über die Integration

von Farbmanagementsystemen in den Betriebssystemen Windows, OS-X und Linux.

Abstract

Colormanagement according to the ICC-Standard has become common for pre-press

within the past years. This document is an investigation on previous approaches for

Colormanagement within world wide web and analyses recommendations for Colormanagement

of the W3C in the field of cross-media publishing using XML-based documents.

The intended audience are web developers aiming at the use of Colormanagement functions

within webapplications. The practical part is about using Open Source software for

server-sided image manipulation applying current Internet standard colorspace sRGB and

working with ICC-profiles. Programmers, planning to integrate W3C-Colormanagement-

Recommendations within webbrowsers, will find usefull information about the integration

of Colormanagement within the operating systems Windows, OS-X and Linux.


Danksagung

An dieser Stelle möchte ich mich bei all jenen Personen bedanken, die diese Arbeit

ermöglicht und unterstützt haben.

Mein besonderer Dank meiner gilt Betreuerein Frau Ulrike Häßler, die mich zur Wahl

des Themas motiviert hat, und mit der ich fachliche und berufliche Fragen stets offen

diskutieren konnte.

Mein Dank gilt auch allen Entwicklern freier und Open Source Software ohne die diese

Arbeit nicht möglich gewesen wäre. Ganz besonders danke ich denen, die mir bei schwierigen

Fragen in Foren und Mailing-Listen weitergeholfen haben.

Insbesondere möchte ich mich bei meiner Kommilitonin Isabel Huber bedanken, die meine

Arbeit kritisch verfolgt hat und mich bei den Korrekturen unterstützte.

Mein Dank gilt auch meiner Mitbewohnerin Kerstin und meiner Freundin Jacqueline,

die mir ebenso halfen die Kommas etwas regelgerechter über den Text zu verteilen.

Für eventuelle Fehleinschätzungen oder Ungenauigkeiten in der Darstellung bitte ich

um Nachsicht. Anregungen und Kritik nehme ich gerne auf elektronischem Wege entgegen.

Thorsten Krug

e-Mail: driver@digitaldonkey.de


Inhaltsverzeichnis

1. Theoretischer Teil 7

1.1. Einführung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.1.1. Farbmanagement im Internet . . . . . . . . . . . . . . . . . . . . . 7

1.1.2. Wer braucht Farbmanagement im Internet? . . . . . . . . . . . . . 9

1.1.3. Die Leser dieses Dokuments . . . . . . . . . . . . . . . . . . . . . . 11

1.2. Aktuelle Situation des Farbmanagements im Internet . . . . . . . . . . . . 11

1.2.1. Die Entwicklung des Internet . . . . . . . . . . . . . . . . . . . . . 11

1.2.2. Die ersten Bilder und websichere Farben . . . . . . . . . . . . . . . 14

1.2.3. Webbrowser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.2.4. Die Akteure im Internet . . . . . . . . . . . . . . . . . . . . . . . . 16

1.2.5. Farbliche Abweichungen bestimmen . . . . . . . . . . . . . . . . . 18

1.2.6. PDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1.2.7. Farbmanagement mit Java . . . . . . . . . . . . . . . . . . . . . . . 20

1.3. Farbdarstellung in digitalen Medien . . . . . . . . . . . . . . . . . . . . . . 21

1.3.1. Farbwahrnehmung, Color-Appearance und Betrachtungsbedingungen

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.3.2. Das Gamma der elektronischen Bildverarbeitung . . . . . . . . . . 23

1.3.3. Farbräume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.3.4. sRGB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.3.5. Medienneutrale Arbeitsprozesse . . . . . . . . . . . . . . . . . . . . 30

1.3.6. ICC-Profile Format . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

1.3.7. Der ICC-Proof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

1.4. Problemanalyse und Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . 33

1.4.1. Unterschiedliche Betriebssysteme . . . . . . . . . . . . . . . . . . . 33

1.4.2. Unterschiedliche Ausgabegeräte . . . . . . . . . . . . . . . . . . . . 40

1.4.3. Benutzer und Webmaster . . . . . . . . . . . . . . . . . . . . . . . 47

1.5. Webstandards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

1.5.1. Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

1.5.2. Das World Wide Web Consortium (W3C) . . . . . . . . . . . . . . 51

1.5.3. Die W3C-Techniken . . . . . . . . . . . . . . . . . . . . . . . . . . 53

1.5.4. Das W3C über Farben . . . . . . . . . . . . . . . . . . . . . . . . . 63

1.5.5. Anforderungen an künftige Webbrowser . . . . . . . . . . . . . . . 68

2. Praktisches Farbmanagement für den Webserver 69

2.1. Server- und Clientseitige Bildverarbeitung . . . . . . . . . . . . . . . . . . 69

2.1.1. Workflow im Internet . . . . . . . . . . . . . . . . . . . . . . . . . . 70

2.1.2. Serverseitige Bildverarbeitung . . . . . . . . . . . . . . . . . . . . . 71

5


Inhaltsverzeichnis 6

2.2. OpenSource Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

2.2.1. Lizenzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

2.2.2. Verwendung von OSS . . . . . . . . . . . . . . . . . . . . . . . . . 74

2.2.3. Kosten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

2.2.4. Open Source Programme zur Bildbearbeitung . . . . . . . . . . . . 76

2.3. Anwendungsbeispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

2.3.1. Farbraumtransformation nach sRGB . . . . . . . . . . . . . . . . . 81

2.3.2. Safaribrowser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

2.3.3. Softproof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

2.3.4. Profile auswerten und auslesen . . . . . . . . . . . . . . . . . . . . 83

2.3.5. Farbdifferenzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

2.3.6. Farbprofile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84

A. Anhang 85

A.1. Weiterführende Informationen zu den Programmen . . . . . . . . . . . . . 85

A.1.1. ImageMagick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

A.1.2. LCMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

A.1.3. ArgylCMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

A.2. Formalisierter Entwicklungsprozeß beim W3C . . . . . . . . . . . . . . . . 89

A.3. Medientypen in CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

A.4. Umfrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

A.5. Qualität von Fernsehsignalen . . . . . . . . . . . . . . . . . . . . . . . . . 91

A.6. Quelltexte der Anwendungen . . . . . . . . . . . . . . . . . . . . . . . . . 91

B. Literaturverzeichnis 95

B.1. Literaturverzeichnis verwendeter Bücher und Aufsätze . . . . . . . . . . . 95

B.2. Links zum Theoretischen Teil . . . . . . . . . . . . . . . . . . . . . . . . . 97

B.3. Links zur Bildverarbeitung auf dem Webserver . . . . . . . . . . . . . . . 103

B.4. Links aus dem Anhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

Abbildungsverzeichnis109

6


1. Theoretischer Teil

1.1. Einführung

1.1.1. Farbmanagement im Internet

Seit 1992 das erste, nicht sehr gelungene Bild im Internet

veröffentlicht wurde, hat sich das Verständnis von

Farbmanagement grundlegend geändert. War es bis dahin

noch möglich eine Druckerei oder ein Grafikbüro zu

betreiben und mit viel Mühe und Geduld alle Monitore,

Scanner und Drucker aufeinander abzustimmen, so ist

mit dem ersten Bild das virtuell ins Haus kam eine kleine

Welt zusammengebrochen. Beim Kollegen im anderen

Büro sah das Bild doch sowohl auf dem Bildschirm als

auch im Druck ganz anders aus.

Abbildung 1.1.: Laut Wikipedia

das erste im World Wide

Web veröffentlichte Bild

Die Bildbearbeitung änderte sich seither grundlegend.

Wurden damals Bilder von erfahrenen Fachkräften direkt

in den CMYK-Farbraum des Druckers gescannt und

im selben Farbraum archiviert, versucht man heute möglichst

mit geräteunabhängigen Farbräumen zu arbeiten, um die mittlerweile zum Standard

gewordene digitale Weiterverarbeitung nicht unnötig zu erschweren.

Große Teile der grafischen Industrie und einige Computerhersteller schlossen sich 1993

zusammen und gründeten das International Color Consortium(ICC). Die Spezifikation

von Farbprofilen ermöglicht es relativen Bilddaten (z.B. RGB 255,0,0 ) in einen Zusammenhang

mit realen spektralen Farben zu bringen. Bis dahin waren die tatsächlichen

Farben eines Bildes von der willkürlichen Kombination aus Betriebssystem, Grafikkarte

und Monitor abhängig. Während sich in der grafischen Industrie die Arbeit mit profilierten

Geräten und in Bilder eingebettete Farbprofilen durchgesetzt hat, herrscht im

Internet noch immer farbenfrohe Anarchie.

Die wenigsten Bilder haben Farbprofile eingebettet. Eingebettete Farbprofile werden mal

vom Browser ausgewertet, mal ignoriert. Bilddaten ohne Farbprofile werden auf unterschiedliche

Weise interpretiert. Im Internet treffen unterschiedliche Betriebssysteme und

Webbrowser auf Bilder, die mit den unterschiedlichsten Techniken fotografiert, eingescannt

oder bearbeitet wurden - eine einfache, verständliche Lösung fehlt.

Im Idealfall sollte ein Browser beim Laden einer Bilddatei prüfen, ob diese ein eingebettetes

ICC-Profil enthält und die Daten mit Hilfe eines Farbrechners in den Farbraum

7


1.1. EINFÜHRUNG 8

des Ausgabegeräts transformieren. Die künftigen Internetstandards bieten weitere interessante

Möglichkeiten, Farbprofile in Webseiten zu integrieren. Diese Arbeit versucht

einen Überblick über Entwicklungen im Bereich Farbmanagement im Internet und den

damit verbundenen Standards und Problemen zu geben. Der praktische Teil beschreibt

mit Beispielen, wie mittels freier Software farbrichtige Wiedergabe im Internet realisiert

werden kann.

Es gab schon einige kommerzielle Ansätze dem Internet

Farbmanagement beizubringen. Sie scheiterten

an mangelnder Akzeptanz:

So versuchte die Firma WayTech in der Zeit des

großen IT-Booms um die Jahrtausendwende ColoReal

1 auf dem Markt zu etablieren. Ein ehrgeiziges

Projekt, bei dem sowohl Hardwarehersteller

von Monitor und Grafikkarte, als auch Websitebetreiber

ColoReal-Unterstützung implementieren

sollten um dem Consumer ein einfaches Farbmanagement

zu ermöglichen. Dieser musste sich

eine eigene Software installieren, die ColoRealBilder

erkennt und nur diese richtig an den Bildschirmfarbraum

anpasst. Durchgesetzt hat sich das Konzept

nicht, obwohl einige namhafte Hersteller (Leadtec,

Matrox) ColoReal-Funktionen anboten, verschwindet

das Produkt 2003 vom Markt.

Abbildung 1.2.: Sie wollten schon

immer mal ein T-Shirt kaufen,

das so aussieht, als wäre es mit

dem roten Pullover in der Wäsche

gewesen? Beispiele für falsche Farbdarstellung

finden sich fast in jedem

Onlineshop

Einen anderen Ansatz verfolgt WebSync. Hier erstellt der Benutzer per Java-Applet ein

Monitorprofil nach dem Adobe-Gamma-Prinzip. Das Applet sorgt nun dafür, dass alle

Bilder auf dem Client-Computer in den Bildschirmfarbraum umgerechnet werden. Die

Firma GretagMcBath 2 hat die Technik übernommen, sie jedoch schließlich nicht mehr

weiterentwickelt.

3 4

Über die Grundlagen von ICC-Farbmanagement und Internettechniken sind schon viele

Bücher und Diplomarbeiten geschrieben worden, eine komplette Einführung in das

ICC Farbmanagement würde den Rahmen dieser Arbeit sprengen. Ich verweise in diesem

Zusammenhang auf die Diplomarbeit von Tobias Huneke, 5 die eine sehr gute

und lesbare Einführung in den ICC-Standard bietet und im Internet frei verfügbar

ist.

1 Color Real, Web-Farbmanagement per Java Applet :

http://www.coloreal.com

2 GretagMcBath:

http://www.gretagmacbeth.com

3 Seybold Publications, Westmont USA,1998 :

http://www.seyboldreports.com/SRIP/subs/0207/IP020714.HTM

4 Seybold Publications, Westmont USA,1998 :

http://www.seyboldreports.com/SRPS/subs/2904/html/news-comments.html

5 Tobias Huneke, Internetseite zur Visualisierung von ICC Profilen mit Hilfe von 3D-Farbraummodellen,

FH-Köln, Juni 2002 :

http://iccview.de/download/ICCView-Colormanagement.pdf

8


1.1. EINFÜHRUNG 9

1.1.2. Wer braucht Farbmanagement im Internet?

In den letzten 10 Jahren erlangte das Internet durch eine steigende Anzahl von Computern

mit Internetanschluss im Business- und Consumerbereich eine stetig wachsende

wirtschaftliche Bedeutung: »Das Internet [...] wird seinen Marktanteil von 2% bei allen

elektronischen Waren heute [2000] auf ungefähr 50% in zehn Jahren erweitern«.

6

Firmen mit International zu handendelnden

Gütern können auf Ihre Webpräsenz

zur Produktinformation und Kontaktaufnahme

nicht mehr verzichten, teuren Anschaffungen

gehen immer häufiger europaweite

oder internationale Preisvergleiche

voran und auch im Consumer-Bereich

wird der Online-Einkauf immer gängiger.

Es gibt viele Produkte bei denen Farbe

die wesentliche Rolle bei der Kaufentscheidug

liefert. Dazu gehören neben Farben

aller Art (Kosmetika, Künstlerfarben,

Wandfarben...), Kleidung und Stoffen

auch Autos oder Blumen. Mit dem im

Juni 2000 verabschiedeten Fernabsatzgesetz

7 fällt dem Händler unweigerlich die

Verantwortung für eine ordnungsgemäße

Abbildung 1.3.: E-Government und andere

Zwecke der Internetnutzung, Statistisches

Bundesamt Wiesbaden, 2005

Präsentation der Ware zu, da der Kunde bei Telefon - oder Onlinegeschäften ein 14-

tägiges, uneingeschränktes Rückgaberecht hat.

Abbildung 1.4.: Wieviele Produkte wegen falscher Farben im Onlineshop an den

Hersteller zurückgehen ist schwer abzuschätzen

Professionelle Anbieter von Bilddaten, wie Bildagenturen, Bildarchive, Internetdatenbanken

oder Presseagenturen haben oft einen großen Bildbestand in unterschiedlichsten

Formaten und Farbräumen. Die Präsentation der Bilder im Internet ist gängige Praxis,

doch was bekommt der Internetsurfer eigentlich tatsächlich von den Bildern zu sehen?

Die Textilindustrie versucht im Business-to-Business Bereich mittels aufwändiger Techniken

die sofortige Verfügbarkeit von farbrichtigen Stoffmustern (Swatches) zu ermöglichen.

Die Arbeitsgruppe vom Rochester Institute of Technology entwickelte ein Verfahren,

6 Informationeller Globalismus, Doktorarbeit von Georgios Chatzimarkakis, Kap 6.1, RFWU Bonn,

2000 :

http://deposit.ddb.de/cgi-bin/dokserv?idn=967325897&dok_var=d1&dok_ext=pdf&filename=967325897.pdf

7 Fernabsatzgesetz:

http://dejure.org/gesetze/FernAbsG

9


1.1. EINFÜHRUNG 10

das mittels spektraler Druckerkalibrierung das Ausdrucken von Stoffmustern ermöglicht

8

Das Farbmanagement im Consumer-Bereich findet aus folgenden Gründen weniger Akzeptanz.

• Die Farbwahrnehmung ist ein hochkomplexer, aber sehr anpassungsfähiger Prozess,

bei dem die Erwartung des Betrachters eine nicht unwesentliche Rolle spielt. Das

Auge ist daran gewöhnt »automatisch« mit verschiedenen Weisspunkten umzugehen,

so lassen sich selbst mit einem farbstichigen Monitor die Urlaubsbilder auf

der Homepage betrachten, im Kopf des Betrachters bleibt der blaugrüne Himmel

strahlend blau.

• Die Wahrnehmung von Farbfehlern ist eine Frage der Erfahrung. Ein untrainierter

Betrachter benötigt wesentlich länger, farbliche Unterschiede wahrzunehmen als

z.B. ein erfahrener Fotograf.

Farbabstand ∆E Erkennungszeit

15 5 sek.

10 10 sek.

5 15 sek.

Tabelle 1.1.: Wahrnehmung von Farbdifferenzen. Zeit die ein ungeübter Betrachter

benötigt, um eine gegebene Farbdifferenz zu erkennen.

Man kann also nicht davon ausgehen, dass Consumer die Notwendigkeit sehen, für richtige

Farben besondere Maßnahmen zu ergreifen, z.B. die Installation eines extra Plugins

oder Programms. Erst wenn die Farbmanagement Funktionen für den Benutzer integriert

und gut versteckt Ihren Dienst tun, werden sie sich auf breiter Front durchsetzen.

Aber auch klassische DTP-Domänen, wie der Softproof könnten im Internet Einzug halten.

Vielleicht kann der Papierhersteller oder der Belichtungsservice den Kunden von

der »etwas teureren Papiersorte« überzeugen, wenn er sein Bild auf unterschiedlichen

Papieren vor sich auf dem Bildschirm beurteilen kann.

Und schließlich arbeiten viele Softwarehersteller daran, die Unterschiede zwischen lokalen

Anwendungen und Internetanwendungen für den Benutzer zu minimieren. Der Webserver

wird zum Anwendungsserver und aus Farbmanagement im Internet wird Farbmanagement

in Anwendungen.

8 Spectral Color Management for a Virtual Swatch; Mitchell R. Rosen, Lawrence A. Taplin, Francisco

H. Imai, Roy S. Berns, and Noboru Ohta. Publiziert in: »The 9th Color Imaging Conference: Color

Science and Engineering: Systems, Technologies, Applications Scottsdale, Arizona«, 2001 :

http://www.imaging.org/store/epub.cfm?abstrid=6898

10


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 11

1.1.3. Die Leser dieses Dokuments

Beim Leser wird ein allgemeines Verständnis von Farbräumen und dem Farbmanagement

nach dem ICC-Standard vorausgesetzt. Grundlagen der elektronischen Bildverarbeitung

und von Auszeichnungssprachen (wie HTML) sind hilfreich.

• Farbmanagement Interessierte

• Entwickler von Anwendungssoftware, wie Webbrowsern oder HTML-Editoren

• Entwickler von Webanwendungen die planen, farbmanagementfähige Webanwendungen

zu entwickeln

Ich empfehle diese Arbeit am Bildschirm zu lesen. Denn in der PDF-Version sind die

Teile der Arbeit miteinander verknüpft und alle Quellangaben aus dem Web per Klick

verfügbar.

1.2. Aktuelle Situation des Farbmanagements im

Internet

1.2.1. Die Entwicklung des Internet

Das Internet entstand aus dem Bedürfnis von wissenschaftlichen und militärischen Einrichtungen

die Kommunikation und den Austausch von Informationen zu verbessern. Die

Abkürzung Internet steht für Interconnected Networks, es handelt sich um ein Netzwerk

aus vielen unabhängigen Netzwerken, die über definierte Protokolle miteinander kommunizieren.

Umgangssprachlich wird der Begriff Internet gerne als Synonym für das World Wide Web

(www) verwendet, obwohl es sich beim www zwar um den populärsten, aber keineswegs

einzigen Dienst 9 des Internets handelt.

Bis Ende der 70er Jahre bestand das Internet im wesentlichen aus einem Zusammenschluss

teurer Großcomputer militärischer und wissenschaftlicher Einrichtungen, die mit dem Ziel

vernetzt wurden, die rare Rechenkapazität besser Nutzen zu können.

Die dezentrale Architektur des Internet, ein Datenpaket mit Ziel- und Absenderadresse

sucht sich autonom einen Weg durch das Netz, ohne von einer zentralen Koordinierungsstelle

abhängig zu sein, war eine technische Notwendigkeit, nicht Entwicklungsziel, wie

die Legende vom atomkriegresistenten Kommunikationsnetz nahe legt. Die bis dahin übliche

verbindungsorientierte Kommunikation erwies sich als unwirtschaftlich, unflexibel

und unzuverlässig.

9 Beschreibung der Internetdienste :

http://de.wikipedia.org/wiki/Internet#Dienste

11


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 12

Die entscheidende Entwicklung für den komerziellen Erfolg des Internets Anfang der 90er

war die Entwicklung des www und der HyperText Markup Language (HTML) durch Tim

Berners-Lee und die Erfindung des Webbrowsers.

Die Idee war so einfach wie revolutionär: Jeder Text hat eine Struktur, im allgemeinen

zumindest eine Überschrift und einen Absatz. Komplexere Texte zeichnen sich durch

eine Gliederung in Hauptthemen und Unterthemen aus, die durch Zwischenüberschriften

unterbrochen werden. Bei wissenschaftlichen Arbeiten findet sich zudem noch Referenzen

auf weitere Texte, die in der Arbeit berücksichtigt wurden. Berners-Lee verallgemeinerte

die beschriebenen Textstrukturen und brachte sie in eine für Menschen und Computer

leicht lesbare Form.

Wesentliche Eigenschaften von HTML sind:

• Leichte Lesbarkeit

HTML Dateien bestehen aus ASCI Text, zum einen mit einfachen Texteditoren

bearbeitbar ist und zum anderen von Computern unkompliziert bearbeitet werden

kann.

• Strukturierung

Man benutzt sogenannte Tags (engl: Etikett, Anhänger, Aufkleber, Marke) um die

Inhalte in zu strukturieren, das sind in Kleiner- und Größerzeichen eingeschlossenen

Kürzel, denen dann bestimmte Eigenschaften zugewiesen werden.


Die Farben im World Wide Web

Es gibt eine Diplomarbeit über Farbmanagement im Internet zu finden

unter folgendem Link


• Verlinkung

Jedes Webdokument hat eine eindeutige Adresse. So können mit Hilfe eines Link-

Tags Referenzen zwischen einzelnen Webdokumenten hergestellt werden. Beim Lesen

des Dokuments kann man mit einem Klick auf einen solchen Link die gewünschte

Seite im Webbrowser laden.

Nach der Einführung von HTML konnten auch weniger computererfahrene Benutzer

auf Informationen zugreifen und vorhandene Inhalte durch Verlinkung in neue Zusammenhänge

stellen. Die rasch wachsende Anzahl der Nutzer führte Mitte der 90er dazu,

dass innovative Unternehmen neue Absatzmärkte, Werbe- und Informationspotentiale

erkannten und schließlich webbasierte Produktideen entwickelten. Mit anderen Worten:

Das Internet wurde kommerziell interessant.

Man erkannte auch schnell, dass dem Webbrowser als »Auge und Ohr« des Benutzers

eine wesentliche Bedeutung zukommt. Wer den am weitesten verbreiteten Webbrowser

entwickelte, bestimmt gewissermaßen, durch welche Brille der Nutzer blickt. Da es kein

zentrales Inhaltsverzeichnis, wie z.B. in einer Bibliothek gibt, beeinflussen die ersten

12


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 13

Links, die ein neuer Nutzer zur Verfügung hat, sein künftiges Surf- und Konsumverhalten

mit.

So entbrannte unter den Entwicklern von Webbrowsern intensiver Wettstreit um die

Gunst der Nutzer. Die Entwickler maßen sich darin, wer seinem Browser mehr »features«

beibringen konnte. Dabei entwickelte jeder Hersteller eigene Ansätze und neue

Markup-Tags zu dem damals aktuellen HTML 2.0 Standard. Webdesigner konnten sich

entscheiden auf welchem Webbrowser ihr Design besser aussehen oder funktionieren soll.

Tipps und Tricks, wie man die jeweiligen Eigenheiten der Webbrowser umschiffen kann,

wurden in einschlägigen Foren ausgetauscht, man schrieb »Browserweichen« mit Javascript,

um mit den eitlen Eigenheiten der Browser zu umgehen.

Das war der Entwicklung und Anwendung einheitlicher Standards für Webseiten nicht

sehr förderlich, weshalb sich 1994 mehrere Firmen zusammenschlossen um das W3-

Consortium (World Wide Web Consortium, W3C -> 1.5.2) zu gründen. Es soll die

Entwicklung allgemein akzeptierter Standards und neuer Techniken vorantreiben und

deren Akzeptanz fördern, denn erst die Zahl der tatsächlichen Anwender einer neuen

Technik entscheidet darüber, ob sie sich durchsetzen kann. Entwickler von Webbrowsern

und Webdesigner beeinflussen sich dabei wechselseitig.

»In den letzten 10 Jahren hat sich das Internet zum Massenmedium entwickelt. Niemand

bezweifelt mehr ernsthaft die kommerzielle Bedeutung des Internets. Keine der großen

Erfindungen der technischen Neuzeit hat sich so schnell ausgebreitet wie das Internet. [...]

Der Internet-Verkehr verdoppelt sich alle hundert Tage, und die Zahl der Nutzer dürfte

bis 2004 auf eine Milliarde Menschen steigen.« [F AZ] 10

Trotz der Krise der new Economy 1999 11 ist der Anteil der über das Internet abgewickelten

Geschäfte am Welthandel stetig gestiegen.

Mit den technischen Fortschritten ging die Entwicklung neuer Formen der Kommunikation

und Informationskompetenz einher. Es kommt nicht mehr so sehr darauf an Informationen

zu finden, sondern das Informationsangebot richtig zu bewerten und dann die

geeigneten Informationen auszuwerten.

Der Computer ist nicht mehr eine Maschine für eine spezielle Aufgabe, sondern ein universelles

Werkzeug zur Bewerkstelligung verschiedenster Aufgaben. Die Komplexität der

Anforderungen hat auch dazu geführt, dass kein Einzelner mehr in der Lage ist, alle

Aspekte eines Computers ausreichend zu beherrschen. Die Entwicklung von Anwendungen

wurde modularisiert, Standards für Geräte, Betriebssysteme und Netzwerke ermöglichen

Nutzung von Diensten, ohne dass man über die Details jeder einzelnen Funktion

genau Bescheid wissen muss.

Eine neue Software ist heute nur noch zu geringen Teilen wirklich neu. Entwickler ver-

10 Frankfurter Allgemeine Zeitung,10.01.2001, S.8 :

http://www.dgap.org/Publikationen/Weltwirtschaft/Wie das%20Internet%20die%20Weltpolitik%20ver%E4ndert.html

11 ikT in Deutschland - Informations- und Kommunikationstechnologien 1995 – 2003, Statistisches Bundesamt

Wiesbaden, Sept 2004, S.22 :

http://www.destatis.de/download/d/veroe/iktvoe.pdf

13


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 14

wenden verschiedene Bibliotheken (Librarys), um bestimmte Funktionalitäten nicht von

Grund auf neu umsetzen zu müssen. Frameworks bieten einem Entwickler systematisierten

Zugriff auf benötigte Dienste und Funktionen, wie Schnittstellen für Netzwerkprotokolle,

das Benutzerinterface, Ein -und Ausgabegeräte.

Es hat sich gezeigt, dass die Beteiligung vieler Entwickler die Stabilität und Sicherheit

einer Anwendung erhöhen kann. Dem trägt die OpenSource-Bewegung (->2.2) Rechnung,

sie nutzt die Kommunikationsmöglichkeiten von e-Mail, Chat oder Internetforen.

In Gruppen organisierte Entwickler tauschen Quelltexte - oft die best gehüteten Geheimnisse

kommerzieller Softwareentwickler - für einzelne Funktions-Bibliotheken oder

Anwendungsprogramme aus und ermöglichen durch verschiedene liberale Lizenzpolitiken

(-> 2.2.1) auch die Weiterverwendung der Arbeit in anderen Projekten. Die offenen

Quelltexte schaffen Vertrauen in Software im demokratischen Sinn: Wenn viele Programmierer

ein »stück Software« erfolgreich verwenden, werden Fehler erkannt, diskutiert und

korrigiert. »Hintertürchen«, die z.B. eine Sicherheitsfunktion aushebeln, werden durch

den evolutionsartigen Entwicklungsprozess vermieden.

Der selbe gedankliche Ansatz spiegelt sich auch in den freien Wissensdatenbanken wieder.

Hier schreiben die Benutzer durch einen technisch formalisierten Prozess gemeinsam an

Dokumenten. Der bekannteste Vertreter, die Wikipedia, ist mittlerweile eine der größten

Wissenssammlungen der Welt.

1.2.2. Die ersten Bilder und websichere Farben

In den Anfangszeiten des Internet (ca. 1996) konnten die meisten Computer nur 256

Farben darstellen, da die Grafikkarten mit 8Bit angesteuert wurden. Weitere Farbwerte

werden bei diesen Systemen durch Dithering dargestellt, was homogene Farbflächen zu

unansehenlichen Pixelmustern werden lässt. Heute sind 16 Bit (high color) und 32bit

(True Color) Farben Standard.

Eine verlässliche Möglichkeit zur Farbdarstellung war die Benutzung der 216-Farben-

Netscape-Farbpalette (auch Web-Palette, 6x6-ColorCube, Web-Safe ColorPalette), da

sie mit allen Browsern richtig dargestellt wurde. Die 216-Farben waren der größte gemeinsame

Nenner der PC -und Macintosh-Hardware Look-Up-Table (LUT), 40 weitere

Farben wurden auf beiden Systemen unterschiedlich interpretiert.

Diese Farbpalette ist in allen gängigen HTML-Editoren und in Photoshop integriert. Sie

setzt sich aus 6 erlaubten Farbwerten je Farbkanal (Hexadezimal: 00,33,66,99,CC,FF)

zusammen. Für RGB-Farbwerte gilt: Es sind Farbwerte erlaubt, die entweder Null oder

durch 51 teilbar sind. Eine weitere Einschränkung ergibt sich durch die unterschiedliche

Interpretation von Farbwerten aus Gif-Bildern und HTML/CSS-Farbwerten, bei 15,

16, 24 und 32-Bit-Systemen. So zeigen GIF-Bilder, die vor einen HTML-Hintergrund

gleichen Farbwerts gesetzt werden, bei manch einer Kombination aus Betriebssystemen,

Grafikkarte und Webbrowser eine Differenz zwischen Vorder- und Hintergrund.

12 Be-

12 Testseite: Demonstriert Unterschiede zwischen gif- und Hintergrundfarbwert, Nov 2005 :

http://hotwired.lycos.com/webmonkey/00/37/stuff2a/complete_websafe_216/test.html

14


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 15

rücksichtigt man dieses Problem, ergibt sich eine Websichere-Farbpalette, die nur noch

22 Farben enthält. Vermeiden kann man das Problem durch die Verwendung von transparenten

Hintergründen bei den gif-Bildern.

13 14

Heute gibt es nur noch wenige Mobil-Geräte, die nur 256 Farben darstellen können. Nach

einer Statistik von Stat-Market im Auftrag von Z-Net surften schon im Jahr 2000 mehr

als 93% mit mehr als 256 Farben 15

Die Verwendung der 216-Farben-Farbpalette ist nur sinnvoll, wenn Webanwendungen für

eine Zielgruppe mit solchen Geräten entwickelt werden.

1.2.3. Webbrowser

Webbrowser sind für die Darstellung des Inhalts einer Webseite auf einem Ausgabemedium

zuständig. Unterschiedliche Ausgabemedien werden in Kapitel 1.4.2 besprochen.

Allen Webbrowsern gemein ist ihre Fähigkeit den durch Markups strukturierten Inhalt

der Webseite in ein für Menschen verständliche Form zu bringen. Abgesehen davon, dass

manche Ausgabemedien keine Darstellung von Bildern erlauben, ist die für Farbmanagement

wesentliche Frage, wie die einzelnen Browser mit den durch Links referenzierten

Bildern umgehen. Die unterschiedlichen Vorraussetzungen, die Betriebssysteme (->1.4.1)

mitbringen, bieten beste Vorraussetzungen für farbliche Willkür.

Bezüglich der Bilddarstellung kann man Browser folgendermaßen klassifizieren:

1. Keinerlei Farbfunktionen

-> Die Farbdaten werden als referenzlose Werte an den Ausgabeprozess übergeben.

2. Standardisierte Farbfunktionen

-> Ein einheitlicher Farbraum ( z.B. sRGB ) wird bei allen Farbdaten angenommen.

Eine korrekte Transformation in den Farbraum des Ausgabegerätes wird möglich,

ist jedoch nicht mehr korrekt, wenn Bilddaten in anderen Farbräumen vorliegen.

3. Auswertung von Farbprofilen

-> In Bilder eingebettete Farbprofile werden beim Ausgabeprozess berücksichtigt

Weitere Farbdaten werden einem standardisierten Farbraum zugeordnet.

13 »Death of the Websafe Color Palette?«, David Lehn and Hadley Stern, 6.9.2000 :

http://hotwired.lycos.com/webmonkey/00/37/index2a.html

14 »The browser-safe web palette«, Lynda Weinman, Nov.2005 :

http://lynda.com/hex.html

15 Statistik zur Farbfähigkeit der Webbenutzer, Nov. 2005 :

http://reviews-zdnet.com.com/4520-6033_16-4204478.html

15


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 16

4. Auswertung von im Markup-Tags spezifizierten Farbprofilen für Farbdaten

-> es wird möglich unprofilierten Bilddaten an zentraler Stelle ein Profil zuzuordnen.

Dies ermöglicht die Reduzierung der übertragenen Datenmenge durch Verzicht

auf redundante Profile in jedem Bild. Weiteren Farben im Webdokument, wie z.B.

Hintergründen, können farbmetrisch festgelegte Werte zugeweisen werden.

Die aktuellen Webbrowser sind fast ausschließlich der Kategorie 2 zuzuordnen. Ausnahmen

bilden lediglich der Internet Explorer 5 für Mac OS-X und Apples Safari Browser.

Diese kann man der Kategorie 3 zuordnen.Mit der kleinen Einschränkung, dass sich Safari

bei Bilddaten ohne eingebettetes Farbprofil nicht an den sRGB Standard hält, sondern

das dem Monitor zugeordnete Farbprofil verwendet, was bei Daten aus dem Internet

keinen Sinn macht.

Die in künftigen CSS-Standards (->1.5.4) beschriebenen »color-profile« Eigenschaften

werden derzeit von keinem Browser vollständig unterstützt.

1.2.4. Die Akteure im Internet

Wer ist das Internet? Diese Frage muss zunächst eingegrenzt werden. Zunächst betrachten

wir aus technischer Sicht die Vorgänge, die der Abruf Web-Adresse nach sich zieht

um einige technische Begriffe zu klären. Desweiteren sollen alle an der Entwicklung von

Standards beteiligten Gruppen untersucht werden. Probleme mit denen sich für Surfer

und Webdesigner auseinander setzen müssen, werden erst bei der Problemanalyse unter

1.4.3 behandelt.

Die Kommunikation im Internet findet immer zwischen Clients und Servern statt. Soll

eine Webseite angezeigt werden stellt ein Client eine Anfrage an einen Server, der das

gewünschte Dokument ausliefert.

Der Server ist ein ganz normaler Computer, der eine permanente Verbindung zu dem

Verbund von Netzwerken hat, die wir als Internet bezeichnen (WAN-Server). Um Webseiten,

anzuzeigen wird vom Client eine http-Anfrage (Hypertext Transfer Protokoll) an

den Server gestellt - niemals umgekehrt.

Nicht alle Computer im Internet sind Webserver. Ein Webserver ist genau genommen ein

Prozess auf dem Server, der http-Anfragen beantwortet. Der berühmteste und verbreitetste

ist der Open-Source-Webserver Apache. 16 Häufig wird der Server auf dem ein

Webserver-Prozeß läuft, als Webserver bezeichnet, um Ihn umgangssprachlich von evtl.

vorhandenen lokalen Servern (LAN-Servern) abzugrenzen. Das ist nicht ganz korrekt,

führt aber im Allgemeinen nicht zu Verwechselungen.

Was geschieht nun wenn eine bestimmte Webadresse angefragt wird? Zunächst muss die

Angefragte Internetadresse, beispielsweise http://digitaldonkey.de/hallo.html einer für jeden

Internet-Teilnehmer einzigartigen IP-Adresse zugeordnet werden. Dazu wird vom

16 Webserver Apache, Apache Software Foundation :

http://www.apache.de/

16


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 17

Client ein DNS-Server (Domain Name Server) befragt: Der liefert z.B. für digitaldonky.de

die IP-Adresse 195.137.213.86 . Nun wird vom httpd-Dienst des Servers mit der

genannten Adresse die Datei hallo.html gefordert. Ist sie abrufbar, wird sie an den Client

geschickt und im Webbrowser angezeigt.

HTML-Seiten sind statisch. Unveränderliche Textdateien, die vom Webserver so, wie

sie gespeichert wurden, ausgeliefert werden. Um eine individuell angepasste Ausgabe

zu ermöglichen werden verschiedene Programmier- und Interpretersprachen, wie PHP,

PERL oder JAVA verwendet. Sie können vom Client gesendete Informationen (z.B.

aus einem Formular) verarbeiten, Datenbankabfragen vornehmen oder andere Prozesse

aufrufen. Letztendlich wird aus den dynamischen Daten ein individuelles Webdokument

generiert. Bei dieser Vorgehensweise spricht man von Serverseitiger Programmierung.

Interaktive Webseiten lassen sich durch clientseitige Programmiersprachen, wie JavaScript/Ecmascript

realisieren. In diesem Zusammenhang entstand der Begriff Dynamic

HTML (DHTML).

Wie entstehen Standards (-> 1.5) in einem dezentralen Medium wie dem Internet?

Wie wird festgelegt welche Techniken angewendet werden? Welche Akteure am Prozess

der Entwicklung von Internettechniken unabhängig vom W3C (-> 1.5.2) teilhaben

und wie sie sich dabei wechselseitig beeinflussen, soll der folgende Abschnitt beleuchten.

Um die Entwicklung von Webstandards verstehen, sollen zunächst alle Beteiligten und

ihre Motive analysiert werden:

• Der Surfer oder Benutzer ruft Webseiten auf und lässt sie von seinem Webbrowser

anzeigen. Von Webentwicklern wird der Surfer gemeinhin als ein recht naives Wesen

betrachtet, das wohl geleitet und geführt sein will - schließlich ist der Zweck einer

Webseite Informationen zu sammeln, zu verbreiten oder Geschäfte zu machen und

dazu braucht es Kunden - die Surfer. Sie interessieren sich im allgemeinen nicht

dafür, ob alles korrekt angezeigt wird, wählen aber sicherlich ein alternatives Angebot,

wenn »irgendwas nicht funktioniert«. Eine für die Entwicklung des Internets

wesentliche Entscheidung trifft der Surfer zumeist unbewusst: Welchen Webbrowser

er verwendet.

• Der Webdesigner, Webentwickler oder Webprogrammierer erstellt Internetseiten und

macht sie auf dem Server verfügbar. 17 Webdesigner müssen gut überlegen, welche

Techniken Sie anwenden und welche Webbrowser sie Unterstützen wollen. Verwenden

sie ein Element, das vom Webbrowser nicht oder nur unzureichend unterstützt

wird, müssen sie damit rechnen, dass der Surfer nicht das Gewünschte zu sehen

bekommt und bei der Konkurenz fündig wird.

• Der Webbrowser ist ein Computerprogramm, das die Anzeige von Webdokumenten

17 Der Webdesigner ist theoretisch für das Layout mit Techniken wie HTML, CSS und Flash verantwortlich,

der Webprogrammierer für Serverseitige Programmiersprachen. Da es sich oft um die selbe

Person handelt, werden die Begriffe in dieser Arbeit synonym verwendet.

17


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 18

ermöglicht. Verschiedene kommerzielle und freie Webbrowser werden mit verschiedenen

Motiven entwickelt - der Verkauf der Software Webbrowser an die Surfer ist

es nicht. Es ist üblich das Webbrowser für den Endkunden kostenlos sind. Es gibt

eine ganze Menge von Webbrowsern, welche von den Benutzern seines Webangebots

am häufigsten verwendet werden, kann der Webdesigner durch die Browserstatistik

seines Webservers erfahren.

• Der Browser-Entwickler beschäftigt sich mit der Entwicklung von Webbrowsern.

Er entscheidet welche Webstandards, Tags, Plug-ins, Grafikformate etc. ein Webbrowser

darstellen kann. Die Entwicklung eines Webbrowsers ist ein aufwändiges

Projekt und welche Standards und Techniken unterstützt werden sollen ist nicht

nur eine Frage der technischen und benutzerorientierten Notwendigkeit, sondern in

großem Maße abhängig von marktstrategischen Überlegungen.

• Entwickler von HTML-Editoren bestimmen darüber welche Techniken den weniger

Interessierten Webmastern zur Verfügung stehen. Sie setzen bestimmte Standards

in »What You See Is What You Get« (WYSIWYG) Editoren um und beeinflussen

damit den Großteil der Webdesigner.

Angenommen das W3C hat eine neue Standard-Empfehlung herausgegeben, es gibt auch

schon ein bis zwei Webbrowser, die diese Technik unterstützen. Professionelle Webmaster

werden diese Technik so lange nicht einsetzen, bis der Großteil der Surfer Webbrowser

verwendet, die sie unterstützen. Bestenfalls entwickelt er eine Alternative, die die Verwendung

der neuen und einer etablierten Technik parallel erlauben (Browserweiche), denn

er will keine Benutzer verlieren.

Für Browser-Entwickler wird es erst dringend die neue Technik zu implementieren, wenn

sie eine gewisse Verbreitung gefunden hat und er Gefahr läuft eine Entwicklung verpasst

zu haben. Innovationen, wie die Implementierung eines neuen Standards bergen immer

das Risiko auf den Entwicklungskosten sitzen zu bleiben, wenn sich die Technik nicht

durchsetzt.

Der WYSIWYG-Editor-Entwickler will ein ausgereiftes Produkt verkaufen. Er arbeitet

ziel orientiert, d.h. er sucht für eine bestimmte Funktion, beispielsweise die Darstellung

einer Tabelle, einen Weg diese auf möglichst allen Browsern korrekt darzustellen - er

orientiert sich also an den unterstützten Browser-Techniken.

Der Großteil der Surfer verwendet den Webbrowser der Firma Microsoft, weil er mit

dem Betriebssystem ausgeliefert wird. Eine neue Technik, selbst wenn sie vom W3C als

Standard empfohlen wurde, hat es also nicht leicht sich durchzusetzen, solange sie nicht

vom Marktführer unterstützt wird.

1.2.5. Farbliche Abweichungen bestimmen

Es gestaltet sich äußerst schwierig, genau zu bestimmen, welche Farben ein Internetsurfer

zu sehen bekommt, denn einerseits bestimmt das Betriebssystem (->1.4.1) und

18


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 19

der Webbrowser (-> 1.2.3) darüber, wie die Farben eines Bildes dargestellt werden und

andererseits steht es dem Surfer frei, selbst bei technisch guten Vorraussetzungen für

ungünstige Betrachtungsbedingungen (->1.4.3) zu sorgen.

Da die meisten Webbrowser Farbprofile ignorieren und die Bilddaten als sRGB-Farbwerte

interpretieren, können augenfällige Farbabweichungen entstehen, wenn Bilder nicht im

sRGB Farbraum vorliegen, auch wenn sie das richtige Farbprofil eingebettet haben.

Ein systematischer Fehler entsteht, wenn Bilddaten im Adobe-RGB-Farbraum innerhalb

einer Webseite verwendet werden, die mit dem Internet-Explorer auf einem Windows-

System angezeigt werden. In diesem Fall kann man, unabhängig von den Betrachtungsbedingungen,

Farbabstände quantifizieren, die durch die falsche Interpretation der Bilddaten

entstehen.

Im Rahmen dieser Arbeit habe ich eine Webanwendung 18 mit Javascript erstellt, um

die Auswirkungen einer solchen Fehlinterpretation zu visualisieren. Der Anwender hat

die Möglichkeit verschiedene Farbwerte anzugeben und sich die Farbdifferenz anzeigen

zu lassen.

Der ausgewählte 8bit RGB-Farbwert wird sowohl nach dem sRGB- 19 als auch nach dem

Adobe-RGB 20 Standard in den Lab Farbraum umgerechnet. Der sich ergebende Lab-

Farbabstand wird nach CIE-Farbabstandsformeln bestimmt und angezeigt.

Die Quelltexte der Anwendung finden sich im Anhang (->A.6).

1.2.6. PDF

Einer der Hauptgründe warum sich neue Farbmanagementtechniken im Internet nicht so

recht durchsetzen wollen, ist das von der Firma Adobe-Systems 1993 entwickelte Portable

Document Format (PDF). Ein proprietäres, aber offen gelegtes Format zur Seitenbeschreibung.

Im Gegensatz zu HTML ist die Ausgabe vollkommen unabhängig vom

Ausgabemedium, der Ersteller eines Dokuments legt die Seitengröße fest. In der Druckindustrie

erfreut sich PDF als Austausch- und Archivformat großer Beliebtheit. Ein Teil

der PDF-Spezifikation wurde von der ISO in den Normen für PDF-X (ISO 15930) und

PDF-A (ISO 19005) zum internationalen Standard erhoben.

Das PDF-Format basiert auf für Drucker entwickelten Post-Script Seitenbeschreibungssprache.

Es ist möglich Bilder in verschiedenen Farbräumen innerhalb eines Dokuments

zu verwenden und dem gesamten Dokument kann ein beliebiger Farbraum zugewiesen

werden. Auf Betriebssystemen mit CMS-Funktionen werden PDF-Dokumente farbkor-

18 Webanwendung zur Visualisierung von Farbdifferenzen :

http://colormanagement.digitaldonkey.de/farbdifferenz

19 »A Standard Default Color Space for the Internet - sRGB«, Michael Stokes, Matthew Anderson,

Srinivasan Chandrasekar, Ricardo Motta, Version 1.10, November 1996 :

http://www.w3.org/Graphics/Color/sRGB

20 Adobe R○ RGB (1998) Color Image Encoding, Version 2005-05 :

http://www.adobe.com/digitalimag/pdfs/AdobeRGB1998.pdf

19


1.2. AKTUELLE SITUATION DES FARBMANAGEMENTS IM INTERNET 20

rigiert angezeigt. Mit Adobe-Acrobat (Professionell) lassen sich auch Druckfarbräume

simulieren (Softproof). Außen vor bleiben, wie bei den Browsern, Betriebssysteme ohne

entsprechende CMM-Funktionen.

Anzeigen lassen sich PDF-Dokumente mit Adobes Acrobat-Reader. Das Programm wird

kostenlos vertrieben, ist für alle Plattformen verfügbar und lässt sich als Plug-in in gängige

Webbrowser integrieren. Mac OS-X verwendet das PDF-Format für die Berechnung

der Bildschirmausgabe.

Es gibt eine große Anzahl von Programmen mit denen sich PDF Dokumente erzeugen

lassen. Der Großteil aktueller Grafik-Software bietet PDF-Export-Funktionen, zahlreiche

Programme ermöglichen PDF-Dokumente aus dem Druck-Dialog zu erzeugen, Bibilotheken

für gängige Programmiersprachen vereinfachen Entwicklern die Erstellung von PDF-

Dokumenten. Die Qualität der erzeugten Dokumente kann jedoch variieren, da nicht

alle Entwickler alle Funktionen der fast 1300 Seiten starken PDF-Dokumentation 21

umgesetzt haben.

PDF wurde auf die Darstellung im Internet optimiert, so lassen sich Dokumente der

jüngeren Generation beispielsweise anzeigen noch ehe sie vollständig geladen sind. Das

Format hat im Internet sehr große Verbreitung gefunden und eignet sich zum Austausch

farbrelevanter Daten. Leider können die meisten Browser PDF nur mit Hilfe eines Plugin

in einem eigenen Browserfenster anzeigen - nur Apples Safari kann PDF ebenso wie

alle anderen Bilder behandeln und an beliebiger Stelle in die Webdokumente integrieren.

1.2.7. Farbmanagement mit Java

Es gab auch Versuche Webbrowsern mittels in Webdokumente eingebetteten Java-Applets

farbrichtige Darstellung zu ermöglichen. Diese Lösungen offensichtlich an mangelnder Akzeptanz

durch die Benutzer.

Die Applets erfreuten sich nie großer Beliebtheit: Man benötigt eine installierte Java-

Virtual-Machine, das Applet muss vom Browser zunächst geladen werden. Schließlich

haben manche Benutzer Sicherheitsbedenken und deaktivieren Java, auch wenn der Zugriff

auf Dateien auf der Festplatte des Internetsurfers prinzipiell unmöglich ist. Der

Zugriff auf ein ggf. vorhandenes lokales Monitorprofil ist nicht möglich, ein Applet kann

nur mit einem Server kommunizieren oder Cookies auslesen.

Das Problem bei Farbmanagement mit Java besteht für den Programmierer darin, ein

geeignetes Farbprofil für das Ausgabegerät zur Verfügung zu haben: Der Surfer muss

selbst Initiative ergreifen und sein Bildschirmprofil auf den Server laden oder mit Hilfe

des Applets visuell ein geeignetes Farbprofil erstellen.

Für die Bearbeitung von Profilen und Farbberechnungen ist Java gut geeignet. Das Pa-

21 PDF Reference - fifth edition, Adobe R○ Portable Document Format Version 1.6 :

http://partners.adobe.com/public/developer/en/pdf/PDFReference16.pdf

20


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 21

ket jawa.awt.color 22 bietet dazu verschiedene Unterklassen, die dem Programmierer

Aufgaben, wie das Einlesen von Farbprofilen abnehmen können. Neben der Programmiersprache

C und deren Weiterentwicklungen bietet Java die beste Unterstützung für

Anwendungen im Sinne des ICC-Standards.

Es gab schon mehrere in Java realisierte CMM-Anwendungen im Internet. Im Prinzip

funktionierten Sie folgendermaßen:

• Benutzer erstellt beim ersten Besuch der Webseite ein Farbprofil. Dies geschieht

visuell wie bei Adobe Gamma oder der Anbieter verschickt Farbfilter per Post, die

dem Benutzer bei der Kalibrierung unterstützen.

• Das Farbprofil wird auf dem Server gespeichert, ein Cookie beim Client ermöglicht

die Identifizierung des Surfers, so dass beim nächsten Besuch die Profilierung nicht

mehr stattfinden muss.

• Mit Hilfe dieses Farbprofils kann nun auf dem Server eine Verrechnung der Bilddaten

mit dem Ausgabeprofil stattfinden - die farbkorrigierten Bilder werden speziell

für den Client übertragen und innerhalb eines normalen Webdokuments im Webbrowser

angezeigt, wie beim True Internet Color System der Firma e-color.inc Die

Anwendung Websync überließ die Farbberechnungen dem Prozessor des Client-

Computers: das Java-Applet verrechnete Bilddaten und Monitorprofil.

Beiden Anwendungen ist gemeinsam, dass der Anwender gezwungen ist zu handeln, noch

bevor er feststellen kann, was er eigentlich von dem ganzen Aufwand hat. Die zweite

Gemeinsamkeit ist, dass beide Anwendungen nicht mehr weiterentwickelt wurden, sich

auf dem Markt offensichtlich nicht durchsetzen konnten.

23 24

1.3. Farbdarstellung in digitalen Medien

Dieses Kapitel befasst sich mit Themen und Begriffen der Farbdarstellung in digitalen

Medien. Es bildet die Grundlage für das Verständnis der Problematik »Farbmanagement

im Internet« und der im praktischen Teil beschriebenen Anwendungen.

22 Das Java Paket java.awt.color in Java 1.4 bietet Klassen für Farbräume und eine Implementierung des

ICC Standards (Version 3.4) :

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/color/package-summary.html

23 Color Real, Web-Farbmanagement per Java Applet :

http://www.coloreal.com

24 e-color.inc »True Internet Color System« Farbmanagement mit Java Applets :

http://www.peimag.com/pdf/pei00/pei0300/benedettipei0300.pdf

21


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 22

1.3.1. Farbwahrnehmung, Color-Appearance und

Betrachtungsbedingungen

Ziel eines Colormanagementsystems ist es

den Farbeindruck einer Vorlage auf unterschiedlichen

Medien für das Auge des Betrachters

so ähnlich wie möglich erscheinen

zu lassen. Ähnlich, weil es aufgrund der physikalischen

Beschaffenheit der Primärfarben

von Druck und Monitor und den Einflüssen

durch das Umgebungslicht nicht möglich ist,

spektral gleiche Farben zu erzeugen.

Die Spektralfarben der Bildschirmphosphore

(additive Farbmischung) erzeugen im Auge

einen wesentlich intensiveren Farbreiz, als

die lasierenden, nicht ganz reinen Primärfarben

bei subtraktiv gemischten Druckfarben

hervorrufen können.

Abbildung 1.5.: Reproduzierbare Betrachtungsbedingungen

können mit Hilfe eines

Normlichtbetrachters geschaffen werden

Die Wahrnehmung von Farbreizen hängt aber auch wesentlich von dem umgebenden Licht

ab. In der Druckindustrie benutzt man für den Vergleich von gedruckten Farberzeugnissen

Normlichtbetrachter. Ausgestattet mit speziellen Lampen nach dem D50 Standard

ermöglichen sie einen objektiven Vergleich der Farben. Bei der Arbeit am Bildschirm

wird der Einfluss des Umgebungslichtes durch das Farbwahrnehmungsmodell (color appearance

model) des verwendeten Farbraumes festgelegt.

Grundsätzlich sollte man beachten unter welchen Bedingungen man farbrelevante Arbeiten

vornimmt, denn es macht einen wesentlichen Unterschied in welcher Umgebung ein

Monitor betrachtet wird. Je nach Umgebung benötigt man ein anderes Visuelles-Gamma

(-> 1.3.2) damit die Farben natürlich anmuten.

Ein exakt arbeitendes Colormanagementsystem muss folglich die Helligkeit und Farbtemperatur

des Umgebenden Lichts berücksichtigen. Bisher half man sich mit festen Definitionen

der Umgebungsbedingungen aus, die in den Standards der Farbäume festgelegt

sind und die schon manchen Farbverarbeiter nach einer morgendlichen Systemkalibrierung

im Abendlicht verzweifeln ließen. Definierte Arbeitsumgebungen sind zwar nicht

gänzlich zu vermeiden, denn ein farbig gestrichener Raum wird auch in Zukunft unseren

Sehsinn beeinflussen, doch künftige Entwicklungen von Hard- und Software lassen

Verbesserungen erwarten. So ist manch TFT-Display der neuesten Generation mit einem

Sensor zur Messung des Umgebungslichts ausgestattet, das CMM von Microsofts künftigem

Betriebssystem »Windows Vista« wird voraussichtlich diese Informationen bei der

Gammaberechnung berücksichtigen.

Ein professioneller Farbarbeitsplatz sollte mit steigendem Ansprüchen folgende Merkmale

aufweisen:

• Neutrale Farbe für Wände und große Flächen: Im Idealfall in einem mittleren Grau,

sonst reines Weiß

22


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 23

• Keine bunte Kleidung bei der Bildbearbeitung tragen

• Direkte Sonneneinstrahlung vermeiden, gut geeignet sind farbneutrale Jalousien

• Blendschutz für den Monitor oder das Display minimiert Streulichteinfluss

• Normlichtbeleuchtung D50. Helligkeit ca. 60-100 Lux

Abbildung 1.6.: Auch ungeeignete Kleidung kann zu Farbverfälschungen führen

Abbildung 1.7.: Einfluss des Umgebungslichts durch Reflexion auf dem Bildschirm

1.3.2. Das Gamma der elektronischen Bildverarbeitung

Die Gammakurve bezeichnet die Helligkeitsverteilung aller Mitteltöne zwischen dem

Schwarz- und dem Weißpunkt eines Bildes. Es gibt kaum Geräte mit einen linearen

Gamma (γ = 1).

Im Algemein gilt:

Ausgangssignal = (Eingangssignal) γ

Betrachtet man die einzelnen Farbkanäle eines RGB-Signals:

R ′ = R γ G ′ = G γ B ′ = B γ

Ob die Verteilung der Tonwerte eines Bildes natürlich wirkt, hängt wesentlich von den

Lichtverhältnissen der Umgebung ab. Man unterscheidet Betrachtungsbedingungen, die

jeweils ein anderes typisches γ visuell implizieren.

23


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 24

Einteilung unterschiedlicher Umgebungsbedingungen

• Dunkle Umgebung (dark evironmement, < 15 Lux), wie sie in Kinosälen und bei

der Diabetrachtung üblich sind.

γ visuell = 1, 5

• Stark gedämpftes Umgebungslicht (very dimm room, ca. 15 Lux)

γ visuell = 1, 25

Entspricht den in der HDTV-Fernsehwelt üblichen Umgebungsbedingungen, wie

sie in der ITU-Empfehlung BT.709 festgelegt sind.

• Gedämpftes Umgebungslicht (ca. 64 Lux)

γ visuell = 1, 125

• Büroumgebung (bright surround, ca. 200 Lux)

γ v visuell = 1

Visuelles-Gamma (viewing gamma)

Betrachtet man einen digitalen Bildverarbeitungsprozess so bekommt man es mit einer

ganzen Reihe von Gammawerten zu tun. Der Gammawert des gesamten Systems ist

das Visuelle-Gamma, es wird typischerweise durch Multiplikation von Kamera-Gamma

und Anzeige-Gamma ermittelt. γ v visuell kann auch visuell mit einem Testbild bestimmt

werden.

γ visuell = γ Kamera γ Display

Das visuelle Gamma ist von der Helligkeit des Umgebungslichts abhängig. Ein typischer

Wert für gedämpft beleuchtete Umgebungen (ca. 64 Lux), wie er dem sRGB Standard

entspricht:

γ visuell = 1, 125

Kamera-Gamma (camera gamma)

Charakteristik der physikalisch durch die verwendeten Bauteile bestimmten Übertragungsfunktion

Bildaufnahmegeräts.

Heute wäre es aufgrund technischer Fortschritte durchaus möglich Ein- und Ausgabe mit

einem linearen Gamma zu produzieren. Wir schleppen aber noch eine »Altlast« aus den

Anfangszeiten des Fernsehens mit uns herum. Zu dieser Zeit gab es noch keine technischen

Möglichkeiten das Bildgamma in Echtzeit zu verändern. Man behalf sich, indem man die

physikalisch bedingten Gammas von Aufnahmebildröhre (γ = 0.45) und Wiedergabegabebildröhre

(γ = 2, 2) im Fernsehstandard festschrieb, um insgesammt ein visuelles

Gamma von 1 zu erhalten (Gamma Vorverzerrung).

Anzeige-Gamma (display gamma)

Gammawert des Ausgabesystems.

γ Display = γ crt γ lut

24


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 25

Monitor-Gamma (CRT gamma - Cathode Relay Tube) Physikalisches Gamma des

Bildausgabegeräts.

Bei Bildröhren ist die Leuchtdichte des Bildschirms folgender Beziehung definiert:

L = L max (gD + O) γcrt

L: Leuchtdichte [cd/m 2 ] D: Pixelwert [0-255]

L max : Maximale Leichtdichte

g: gain = Verstärkung, Kontrastregler des CRT

O: Offset, Helligkeitsregler des CRT

Für den Benutzer ist es verwirrend, dass die Regler für Helligkeit und Kontrast am

Bildschirm nicht ganz das tun, was man intuitiv erwartet. So verstellt man mit dem

Kontrast-Regler tatsächlich Leuchtdichte einer weißen Fläche (also die Helligkeit) und

mit dem Helligkeits-Regler die minimale Leuchtdichte, also die des Schwarzpunkts ein.

Wird der Kontrast auf das Maximum gestellt und die Helligkeit so eingestellt, dass der

Schwarzwert gerade kein Licht emitieren läßt, also genauso hell, wie der ausgeschaltete

Bildschirm ist, vereinfacht sich die obige Gleichung zu

L = (L max D) γcrt

und der Kontrastumfang des Bildschirms wird maximal ausgenutzt. Die Helligkeit des

Pixelwerts 0 (minimale Leuchtdichte) ist vom Umgebungslicht abhängig, weshalb die

Betrachtungsbedingungen (-> 1.3.2) zu berücksichtigen sind. Schlechtere Bildschirme

reflektieren bis zu 20% des Umgebungslichts, das dann die Farben des digitalen Bildes

überlagert.

Grafikkarten Gamma (LUT gamma - Look Up Table der Grafikkarte)

Gamma des Bildspeichers (framebuffer) der Grafikkarte ist abhängig von der Treibersoftware

der Grafikkarte, folglich also abhängig vom verwendeten Betriebssystem.

Bei der Verwendung von ordnungsgemäß eingerichteten CMS sollte der Anwender keine

Probleme mit dem LUT-Gamma bekommen, da das CMS die LUT der Grafikkarte mit

den Informationen aus dem BToA0Tag des ICC Profils versorgt wird. Die Diskussion

über PC-Gamma (2,2) und Mac Gamma (1,8) ist seit Einführung von CMM eigentlich

überflüssig geworden, wird aber immer noch gerne geführt. Webdesigner sollten ein

sRGB-kompatibles Gamma von 2,2 einstellen.

25

1.3.3. Farbräume

Ein Farbraum ist ein Modell zur anschaulichen Darstellung von Farben, es ergibt sich aus

der numerischen Beschreibung von Farben. 26 Es gibt Farbräume die dem menschlichen

25 Portable Network Graphics (PNG) Specification (Second Edition), Nov. 2003 :

http://www.w3.org/TR/2003/REC-PNG-20031110

26 Lexikon der Bildverarbeitung, Helge Moritz, Hüthig Verlag Heidelberg, 2003

25


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 26

Farbempfinden entsprechen (z.B. CIE-Lab, CIE Luv) und solche deren Farbabstände

nicht sinnvoll vergleichbar sind (z.B CIE-XYZ). Man unterscheidet geräteabhängige Farbräume

(device-color-spaces) und geräteunabhängige Farbräume (device-independendcolor-spaces).

Zum Vergleichen von Farbräumen ist die dreidimensionale Darstellung besonders geeignet,

da sich bei der Darstellung in zwei Dimensionen immer nur Ausschnitte des Gamuts

bei festzulegenden Helligkeitsabstufungen darstellen lassen. Mac OS-X (->1.4.1) ermöglicht

den visuellen Vergleich ebenso, wie das kostenlose ICC-Examin 27 oder die ebenfalls

auf Argyl-CMS 28 basierende Webseite ICC-View 29

Es gibt eine unendliche Anzahl von geräteabhängigen Farbräumen, da bei jedem Gerät,

ob Scanner, Kamera, Monitor und Druckprozess, jeweils unterschiedliche physikalische

Vorraussetzungen gegeben sind.

• Bei Scannern und Kameras bestimmen die spektralen Empfindlichkeiten der Sensoren

den Farbwert eines Pixels

• Monitore und TFT-Displays haben unterschiedliche Phosphore bzw. Farbfilter und

mischen die Farben additiv zusammen (sind alle Farben voll ausgesteuert ergibt

sich Weiß)

• Druckprozesse mischen manchmal drei, zumeist aber vier oder mehr Farben subtraktiv

zusammen (d.h. viele Farben ergeben zusammen Schwarz)

Selbst Geräte aus der gleichen Produktionsserie weisen aufgrund von Fertigungstoleranzen

unterschiedliche Farbcharakteristiken auf. Viele Hersteller haben für die Vermessung

von Farbräumen verschiedener Ein- und Ausgabegeräte Messverfahren und entsprechende

Messgeräte entwickelt, die meist mit der entsprechenden Software für die Profilerstellung

ausgeliefert werden. Neben Bildschirmen, TFT-Displays, Druckprozessen und

verschiedenen Druckern kann man mittlerweile auch für Projektoren Farbprofile erstellen.

Geräteabhängige Farbräume werden im allgemeinen als LUT-Farbprofile (-> 1.3.6)

gespeichert, da hierbei die Farbabweichungen der Geräte besser korrigiert werden können.

Dazu kommen geräteunabhängige Farbräume, die für spezielle Anwendungsgebiete entwickelt

wurden. Zum Beispiel visuell gleichabständige Farbräume als Grundlage für Farbabstandsberechnungen,

weichere Gammas für die Offset-Druckvorstufe oder unkomplizierte

Handhabung für den Consumer-PC.

Theoretisch ideal ist der CIE-L*a*b* Farbraum. Er besitzt einen für den menschlichen

Sehsinn homogene Koordinatenverteilung (d.h. er ist visuell gleichabständig) und in-

27 Farbprofile unter Linux uns OS-X analysieren: ICC-Examin :

http://behrmann.name

28 Experimentielles Colormanagment für Unix: Argyl-CMS :

http://www.argyllcms.com

29 ICC-Profile online vergleichen :

http://www.iccview.de

26


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 27

ternational genormt. 30 Er dient neben CIE-XYZ als Austauschfarbraum (PCS - Profile

Connection Space) beim ICC-Farbmanagement.

Die CIE Farbräume sind vollkommen geräteunabhängig und basieren auf empirischen

Forschungen zum menschlichen Farbsehen. Die Betrachtungsbedingungen sind durch die

D50-Standardbeleuchtung und den 2 ◦ -Standard-Beobachter festgelegt. 31

Die ICC-Spezifikation legt jedoch nicht fest, wie die Austauschfarbräume bei der digitalen

Umsetzung beschrieben werden - wie sie zu quantisieren sind. Das war gut gemeint,

man wollte es den Entwicklern eines CMS offen lassen, in welcher Genauigkeit sie

den PCS umsetzen, doch es hat auch dazu geführt, dass CMS verschiedener Hersteller

bei gleichen Ausgangsbedingungen zu unterschiedlichen Ergebnissen kommen können.

32

Die PCS, CIE-XYZ und CIE-L*a*b* sind also medienneutrale, allumfassende Farbräume,

sie umfassen alle aktuellen physikalischen Farbräume inklusive des menschlichen Farbsehens.

Bei der heute noch üblichen Codierung von Bilddaten mit 8bit/Farbkanal (8bpc -

Bit per Chanel) werden die Abstände zwischen den einzelnen Farbabstufungen so groß,

dass es, spätestens bei der unvermeidlichen Umwandlung in den Farbraum des Ausgabegeräts,

zu Branding-Fehlern käme. Eine höhere Quantisierung mit 16 oder 32bpc erhöht

Speicherbedarf und Rechenaufwand. Die PCS eignen sich bei aktuellen Computern folglich

nicht als Farbräume für Bildbearbeitung.

Deshalb haben sich als geräteunabhängige Farbräume verschiedene matrixbasierte (->

1.3.6) RGB-Farbräume etabliert. Sie eignen sich als Arbeitsfarbräume und werden von

den meisten Bildbearbeitungsprogrammen unterstützt. Einige sollen im folgenden kurz

vorgestellt werden, der als Internet-Standard-Farbraum festgelegte 33 sRGB Farbraum

wird genauer betrachtet.

34

Die wichtigsten Unterscheidungskriterien sind:

• Größe des Gamut

Welche Ein- und Ausgabefarbräume eingeschlossen werden. Ergibt sich aus Gamma

und den Primärfarben 35 des Farbraumes.

• Weißpunkt (WP)

Manche Farbräume orientieren sich an den Standards der Grafischen Industrie, die

das genormte Prüflicht D50 verwendet, andere verwenden als Weißpunkt den in

Normen für Büroumgebungen festegelegten D65 Standard. Bei der Umrechnung

von D65-Farbräumen in Farbräume gängiger Druckprozesse ist eine Weißpunktan-

30 ISO 13655:1996

31 CIE Standard 1931

32 CIE Specification ICC.1:2004-10 :

http://www.color.org/ICC1V42.pdf

33 A Standard Default Color Space for the Internet - sRGB :

http://www.w3.org/Graphics/Color/sRGB

34 »Wohlgefühl im Farbraum«, Digit 2/2005, Klie Verlag Hann. Münden

35 Eine Übersicht über Weißpunkte und Primärfarben wichtiger Farbräume :

http://www.brucelindbloom.com/index.html?WorkingSpaceInfo.html

27


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 28

passung notwendig, die nicht nur die Grauachse, sondern den gesamten Farbraum

verschiebt, was die Genauigkeit der Reproduktion verringert.

• Gradation

Das Gamma, das der digitalen Codierung der Daten zugrunde liegt, ist die Gradation

des Farbraums. Die wesentliche Aufgabe eines Arbeitsfarbraums ist es, möglichst

viele Bildinformationen zu speichern. Da ein 8bit Bild unabhängig in welchem Farbraum

es abgespeichert wurde 256 Farbabstufungen je Farbkanal enthält, ist nun

die Frage wie geschickt diese Stufen in einem Farbraum verteilt werden.

Der visuelle Informationsgehalt hängt vom Empfänger ab. Bildanteile, die dieser

nicht wahrnimmt, tragen nicht zum Informationsgehalt bei. Es geht darum, die

Helligkeitsbereiche in denen das menschliche Auge eine feine Unterscheidung ermöglicht,

bei der Datenspeicherung zu bevorzugen und den weniger relevanten

Bildteilen, wie dem Bildrauschen in dunklen Bildteilen weniger Abstufungen zuzuteilen.

Ein visuell gleichabständiger Farbraum speichert die Daten für die medienunabhängige

Bildbearbeitung am besten, denn bei der Transformation in den Ausgabefarbraum

wird dessen LUT (-> 1.3.2) optimal mit Daten versorgt.

Ältere Farbräume orientieren sich oftmals am Gamma des bevorzugten Ausgabeprozesses

um Rundungsfehler bei der Gamma-anpassung zu minimieren.

sRGB

ist der Standardfarbraum für Internet, Konsumer- und Officeanwendungen.

Wegen der wichtigen Bedeutung im Internet gehe ich unter 1.3.4 noch genauer darauf

ein.

WP: D65, Gamma: 2,2

Adobe-RGB

ist ein Kompromiss aus den Anforderungen der Druckvorstufe und Konsumer Anwendungen.

Ein erweitertes sRGB das auch den in Europa wichtigen Euroscale-Offsetdruck-

Farbraum einschließt. Adobe-RGB wird heute oft in »besseren Digitalkameras« als Ausgabefarbraum

angeboten. Problematisch ist das Gamma von 2,2 in dunklen Bereichen:

Für die dunkelsten 3% der Grauachse, die eher Bildrauschen als Bildinformationen enthalten,

werden ca. 10% der verfügbaren Abstufungen (ca. 4-5 Bit) »verschwendet«.

WP: D65 Gamma: 2,2

ECI-RGB

hat sich seit 1999 im Bereich der Druckvorstufe bewährt und wurde von der ECI als

Arbeitsfarbraum empfohlen. Er eignet sich für medienneutrales Speichern von Bilddaten

und als Basis für Ausgaben in gängigen Druckverfahren, wie Offset und Tiefdruck oder

Fotobelichtern. Das Gamma ist dem des Offsetdrucks ähnlich und der Weißpunkt entspricht

den Standards in dieser Branche.

WP: D50 Gamma: 1,8

28


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 29

LStar-RGB

wurde 2004 als Nachfolger des ECI-RGB entwickelt und hat den gleichen Farbumfang.

Er ist wie L*a*b* visuell gleichabständig und somit linear.

WP: D50 Gamma. 1,0

1.3.4. sRGB

ist der vom W3C für die Verwendung im www empfohlene Farbraum. Auf Betriebssystemen

der Firma Microsoft wird er für alle nicht farbmanagementfähigen Anwendungen als

Standardfarbraum verwendet und auf Unixsystemen mit X-11-Anwendungen ist Kompatibilität

gewährleistet, da X-11 ebenfalls ein visuelles Gamma von 2,2 vorsieht. Das macht

sRGB zum zur Zeit verbreitetsten Farbraum für Computeranwendungen im Consumerbereich.

Entwickelt wurde sRGB, um neben dem Farbmanagement nach ICC-Standard einen

für den Betrachter möglichst unkomplizierten Farbraum verfügbar zu haben, die zur

damaligen Zeit noch rare Rechenkapazität für Farbtransformationen zu sparen und den

Programmieraufwand bei farblich weniger relevanten Anwendungen einsparen zu können.

Ziel der Standardisierung war auch, Bilder ohne eingebettete Farbprofile abspeichern zu

können, um die Dateigröße zu minimieren.

sRGB basiert auf Vermessungen von CRT-Bildröhren und gilt als der durchschnittliche

Bildschirmfarbraum für Büro- und Consumergeräten. Das vorgesehene CRT-Gamma von

2,2 ermöglicht die für den Austausch mit der Fernsehwelt notwendige Kompatibilität mit

dem 1990 verabschiedeten, internationalen HDTV-Standard (High Definition TeleVision)

der ITU High Definition TeleVision, ITU-Standard BT-709. 36 Dieser basiert wiederum

auf den Fernsehnormen PAL und SECAM, weshalb man Farben von europäischen Fernsehbildern

ohne Korrekturen über den Bildschirm ausgeben kann. Als Farbraum für die

Condition

sRGB

Luminance level

80 cd/m2

Illuminant White

x = 0.3127, y = 0.3291 (D65)

Image surround

20% reflectance

Encoding Ambient Illuminance Level

64 lux

Encoding Ambient White Point x = 0.3457, y = 0.3585 (D50)

Encoding Viewing Flare 1.0%

Typical Ambient Illuminance Level

200 lux

Typical Ambient White Point x = 0.3457, y = 0.3585 (D50)

Typical Viewing Flare 5.0%

Tabelle 1.2.: sRGB viewing environment Parameters

36 High Definition TeleVision, ITU-Standard BT-709.:

http://www.itu.int

29


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 30

Druckvorstufe ist sRBG hingegen ungeeignet: der Weißpunkt D65 entspricht nicht dem

Standard und das Gamut ist besonders in den Grüntönen kleiner als gängige CMYK-

Druckfarbräume.

Die Betrachtungsbedingungen für den sRGB Farbraum sind ein Kompromiss zwischen

den unterschiedlichen Anforderungen. Der BT.709-Standard sieht eine dunkle Umgebung

vor. Viele Heimcomputer stehen in einer gedämpft beleuchteten Umgebung, die

Lichtverhältnisse eines typischen Computerarbeitsplatzes sind jedoch sehr viel heller (-

> 1.3.2). Es wird unterschieden zwischen einer Umgebung zur Bildbearbeitung (typical

encoding environment), die auch als Betrachtungsumgebung empfohlen wird, und einer

typischen Betrachtungsumgebung (typical viewing environment), wie in Richtlinien für

Büroarbeitsplätzen vorgesehen. Der Weißpunkt des Umgebungslichtes entspricht dem

D50-Standard.

Es ist also vorgesehen, dass sich der Produzent von sRGB-Daten intensiver um die Bedingungen

an seinem Arbeitsplatz kümmert und der Betrachter sich wenig Gedanken machen

muss und zur Anpassung von Lichtern und Tiefen die Helligkeit/Kontrast-Einstellungen

des Bildschirms benutzen kann.

Das Anzeige-Gamma ergibt sich beim sRGB Farbraum aus einem angenommenem γ crt

von 2,2 37 und einem linearen γ lut = 1. Im sRGB Farbraum gespeicherte Daten müssen

also erst mit einer Gammafunktion behandelt werden, bevor Sie in einen Austauschfarbraum

umgerechnet werden können. Die Primärfarben entsprechen nahezu denen des

BT.709-Standards.

1.3.5. Medienneutrale Arbeitsprozesse

Bei der Menge an Farbräumen drängt sich die Frage auf, welcher Farbraum für wen geeignet

ist. In den letzten Jahren ist es üblich geworden, Bilder in einem geräteunabhängigen

Arbeits- und Archivfarbraum abzuspeichern. Welcher Farbraum dafür verwendet

wird hängt einerseits von den verwendeten Bildaufnahmegeräten ab, andererseits von

den vorgesehenen Ausgabemedien. Das Gamut des idealen Arbeitsfarbraums beinhaltet

alle Ein- und Ausgabegeräte. Ein gemeinsamer Weisspunkt ist wünschenswert, um

verlustbehaftete Berechnungen zu vermeiden.

Für einen Webdesigner, der gelegentlich Bilder einscannt oder mit einer einfachen Digitalkamera

aufnimmt, bietet sich sRGB als Arbeitsfarbraum an: Konsumer-Geräte bieten

oft sRGB Daten an, Bilddaten vom Scanner können umgerechnet werden. Werden

alle Bilder konsequent in sRGB archiviert, sinkt der Aufwand für die Weiterverarbeitung.

Für eine Bildagentur wäre ein solcher Workflow allerdings ungeeignet. Die Farbräume von

professionellen Kameras und Scannern würden in sRGB »gezwängt«, und für manchen

Farbton im Offsetdruck gäbe es keine ausreichende Datenbasis.

37 Es handelt sich nicht exakt um ein Gamma von 2,2. Im Bereich der Tiefen wird ist die Funktion nicht

Linear (->2.3.5)

30


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 31

Es kommt also bei der Wahl des persönlichen Archivfarbraums darauf an, woher man

die Bilddaten bezieht und welche Ausgabegeräte man hauptsächlich verwenden will. Unnötige

Umwandlungen sollten vermieden werden, denn jede Farbtransformation ist mit

Rundungsfehlern behaftet und lässt das Bild unschärfer werden. Folglich macht es keinen

Sinn als Webdesigner alle Bilder in L*RGB umzuwandeln und für die Webausgabe

zurück in sRGB zu transformieren.

1.3.6. ICC-Profile Format

Das International Color Consortium (ICC) hat 1993 einen Standard veröffentlicht, der

es ermöglicht den Bytes, in denen die Bilddaten codiert sind, physikalisch messbare Größen

zuzuordnen. Seit September 2003 ist die ICC-Spezifikation 1-2004-10 38 aktuell.. Die

Spezifikation ist auch als ISO Norm verfügbar. 39

An dieser Stelle sollen nur einige für diese Arbeit relevante Punkte des ICC-Profile Formats

besprochen werden, für einen allgemeinen Überblick über die Spezifikation empfehle

ich die Diplomarbeit von Tobias Huneke. 40

LUT- und Matrix Profile unterscheiden sich in der Art, wie die Grenzen eines Farbraums

beschrieben werden. Bei Matrix-Profilen ist der Farbraum durch die Primärfarben, den

Weisspunkt und eine mathematische Vorschrift beschrieben, die die Verteilung der Stufen

angibt - also dem Gamma jedes Farbkanals.

Bei LUT-Profilen sind die Daten in einer Look Up Table für eine Anzahl von Farben

festgelegt. LUT-Profile können Geräte mit unlinearem Verhalten genauer beschreiben

als Matrix-Profile. Mit der Anzahl der Samples verbessert sich die Genauigkeit des Profils

und die Größe der LUT, was dazu führt das LUT Profile manchmal mehrere MB

Speicherplatz benötigen.

Für geräteabhängige Farbräume sind LUT-Profile üblich, für Austauschfarbräume werden

eher Matrix-Profile verwendet.

Weisspunkt

Zu jedem Farbprofil gehört ein definierter Weisspunkt. Er wird als CIE-XYZ-Farbwert im

wtpt-Tag angegeben. Eine Transformation in einen Farbraum mit anderem Weisspunkt

impliziert eine Änderung der Grauachse, die mathematisch kompliziert und mit Ungenauigkeiten

behaftet ist. Sie sollte nach Möglichkeit vermieden werden.

Gamma-Tag

Jedem Farbraum liegt ein Gamma zugrunde (->1.3.2). Abhängig von der Profilart steckt

der Gammawert in den LUT-Tabellen, bei monochomen Profilen im GrayTRCTag oder

38 Die ICC-Spezifikation 1-2004-10 beschreibt -Profile der Version 4.2.0.0 :

http://www.color.org/ICC1V42.pdf

39 ISO 15076-1, Image technology colour management

40 Tobias Huneke, Internetseite zur Visualisierung von ICC Profilen mit Hilfe von 3D-Farbraummodellen,

FH-Köln, Juni 2002 :

http://iccview.de/download/ICCView-Colormanagement.pdf

31


1.3. FARBDARSTELLUNG IN DIGITALEN MEDIEN 32

bei Matrixprofilen im redTRCTag, greenTRCTag und blueTRCTag.

Datenformat

Das Erstellen und Bearbeiten von ICC-Profilen ist aus Sicht des Programmierers komplex.

Im Gegensatz zum leicht verständlichen und klartextbasierten XML-Format, in dem

Microsoft die künftigen Farbprofile anlegen will, sind ICC-Profile als Binärdaten gespeichert:

Im Profil-Header stehen allgemeine Informationen im Klartext, anschließend folgt

Tag auf Tag in binärer Schreibweise jeweils mit der Angabe, wie viele Bytes der Inhalt des

Tags lang ist. Da es verschiedene Profiltypen mit jeweils unterschiedlichen Pflicht-Tags

gibt, wird das Ganze dann recht unübersichtlich.

41

Man kann die Daten der Farbprofile mit geeigneter Software anzeigen. Eine Webanwendung

zur Analyse von Profildaten ist unter 2.3.4 beschrieben und kann unter

42 getestet

werden.

Einbetten von Farbrofilen

Das Einbetten von ICC-Profilen in verschiedene Bildformate dient der Objektivierung der

Bilddaten. Das Farbprofil gibt eine Referenz zum PCS, dem CIE-XYZ oder CIE-LAB

Farbraum und macht die Bilddaten damit bewertbar.

Bei großen Bilddaten, wie sie beim Fotografen auftauchen, machen die 8-2500kB Datenmenge

(LUT-Profile haben manchmal sehr große LUT) die man zum speichern eines

Farbprofils benötigt, nicht viel aus. Betrachtet man jedoch die Dateigrößen auf Webseiten,

bei denen Bilder zwischen 1-20kB und selten mehr als 100kB groß sind, kann ein

eingebettetes Farbprofil die Dateigröße vervielfachen. Aus diesem Grund ist es nicht üblich

bei Bildern im Internet Farbprofile einzubetten, obwohl keine weiteren Nachteile zu

befürchten sind. Bilddaten ohne Referenz sind als sRGB-Daten zu interpretieren, wenn

der Webmaster korrekt gearbeitet hat.

1.3.7. Der ICC-Proof

Der ICC Standard beinhaltet mehrere Möglichkeiten, die Farben eines Ausgabegeräts auf

einem Ausgabegerät mit größerem Gamut zu simulieren (ICC-Proof).

Ein Grafiker, der eine Druckvorlage für den Offsetdruck erstellt, kann sich die Farben

des Druckerfarbraums inklusive dem Weisspunkt des zu bedruckenden Papiers auf seinem

ordnungsgemäß kalibrierten Monitor darstellen lassen (Softproof) oder auf einem

hochwertigen Drucker ausgeben (Proofdruck).

Dabei ist zu beachten, dass für einen korrekten Proof alle Farben des zu simulierenden

Ausgabeverfahrens (z.B. FORGA DIN, dem neuen europäischen Offsetdruck Standard)

auch in dem Simulationsfarbraum darstellbar sind. Optional kann bei manchen Anwen-

41 CIE Specification ICC.1:2004-10 :

http://www.color.org/ICC1V42.pdf

42 Webanwendung zur Analyse von ICC-Farbprofilen :

http://colormanagement.digitaldonkey.de/iccprofileInfo

32


1.4. PROBLEMANALYSE UND AUSBLICK 33

dungen eine farbliche Maskierung für Farben vorgenommen werden, die im Simulationsfarbraum

nicht darstellbar sind.

Für die Berechnung einer Simulation sind drei ICC-Profile notwendig:

1. Das Quellprofil

ist das Profil des Arbeitsfarbraums, in dem die Bilddaten gespeichert sind.

2. Das Simmulationsprofil

ist das Profil des zu simulierenden Druckverfahrens (oder eines anderen Ausgabegeräts

mit einem gegenüber dem Proofgerät kleineren Farbraum).

3. Das Prooferprofil

ist entweder das Profil des Monitors beim Softproof oder das eines hochwertigen

Druckers beim Proofdruck.

Vorgehensweise

Die Bilddaten werden zunächst aus dem Arbeitsfarbraum mit perzeptiven (wahrnehmungsorientiertem)

Rendering-Intent in den Simulationsfarbraum transformiert. Anschließend

folgt eine Transformation in den Farbraum des Proofgeräts. Wenn eine Simulation

des Weisspunkts des Bedruckstoffes gewünscht ist, wird der Rendering-Intend Absolut

Farbmetrisch verwendet. Wird auf das gleiche Papier wie im Druckverfahren geprooft,

verwendet man den Rendering-Intend Relativ Farbmetrisch.

Nach diesem Prinzip können farbmanagementfähige Anwendungsprogramme Proof Szenarien

umsetzen. Die ICC-Spezifikation bietet eine weitere Möglichkeit einen Proof zu

realisieren: Die Device-Link Profile.

DeviceLink Profiles (DLP) beinhalten eine festgelegte Transformation zwischen zwei Geräten,

sie repräsentieren keinen Farbraum und können auch nicht in Bilder eingebettet

werden. Man erstellt DLP, um eine Transformationskette, an der mehrere Farbräume

und Rendering-Intents beteiligt sein können, in eine einzige »Formel« zu packen. So

lässt sich beispielsweise ein Proof-Szenario (->1.3.7) in einem einzigen Profil beschreiben.

DLP-Profile lassen sich mit dem Programm icclink erstellen ->2.2.4.

1.4. Problemanalyse und Ausblick

1.4.1. Unterschiedliche Betriebssysteme

Der ICC-Standard impliziert das Vorhandensein einer Programmarchitektur, die Grundfunktionalität

für das Farbmanagement bereitstellt, das sogenannte Colormanagement

Framework. Dieses Kapitel soll zeigen, welche Probleme es zu überwinden gilt, wenn im

Internet Farbmanagement stattfinden soll. Das Internet besteht aus vielen Betriebssys-

33


1.4. PROBLEMANALYSE UND AUSBLICK 34

temen, die unterschiedliche Voraussetzungen für Client-seitiges Farbmanagement mitbringen.

So braucht man zur Farbtransformation für die Ausgabe ein entsprechendes

Bildschirm-Farbprofil, Funktionen zum Auslesen von Profilinformationen, zur Transformation

in CIE-LAB, bzw. CIEXYZ. Die ICC-Spezifikation 43 beschreibt Ein- und Ausgabeprofile,

Geräteprofile, Transformationen und Rendering Intents, nicht aber wie Programmierer

die einzelnen Teile implementieren sollen.

So bleibt es prinzipiell den jeweiligen Softwareentwicklern überlassen, ob und wie Farbmanagement

implementiert wird. Farbmanagement-Funktionen können sowohl auf Anwendungsebene,

wie beispielsweise in Photoshop, als auch auf Betriebssystemebene umgesetzt werden.

44

Für die Umsetzung des Farbmanagements auf Betriebssystemebene wie bei Apple und

Microsoft spricht, dass es Anwendungs-Entwicklern (z.B. den Entwicklern eines Webbrowsers)

leichter gemacht wird, mit Farben umzugehen. Prinzipiell kann man drei Stufen

der Implementierung unterscheiden:

1. Farbmanagement auf Anwendungsebene

Der Programmierer muss sich um die komplette Implementierung aller Farbmanagement-Funktionen

selber bemühen. Der Benutzer dieser Anwendung muss dann mindestens

ein passendes Bildschirmprofil einstellen, da CMM sonst nicht funktionieren

kann.

2. Farbmanagement auf Betriebssystem-API-Ebene

Hier sind CMM-Funktionen im Betriebssystem integriert, Standardprofile für Ausgabegeräte

werden in den Einstellungen des Betriebssystems vorgenommen. Der

Anwendungsentwickler ruft dann CMM-Funktionen über ein API auf, um auf diese

Informationen zuzugreifen.

3. Implizites Farbmanagement auf Betriebssystem-Ebene

Bei Verwendung moderner, objektorientierter Programmiersprachen kümmert sich

der Anwendungsentwickler nicht mehr um Basisfunktionen wie das Einlesen und

Ausgeben von Bildern. Stattdessen erstellt er ein Objekt vom Typ »Bild«, ruft

dessen »öffne-Bild-Datei-Funktion« auf und gibt das geöffnete Objekt dann zur

Ausgabe an den Bildschirm weiter. In solch abstrakten Programmiersprachen kann

das Betriebssystem sämtliche CMM-Funktionen übernehmen, ohne dass der Entwickler

sich dessen überhaupt bewusst sein muss.

43 CIE Spezifikation ICC.1-2004-10 :

http://www.color.org/ICC1V42.pdf

44 Michael Haas, Color Management - Current Aprroaches, Standards und Futur Perspectives - Recent

Progress in Color Management and Communications 1998, S. 14-18, ISBN / ISSN: 0-89208-210-0

34


1.4. PROBLEMANALYSE UND AUSBLICK 35

Um bei dem Beispiel zu bleiben: Der »Öffnen-Dialog« überprüft bei entsprechendem

Dateityp automatisch, ob sich in dieser Datei ein Farbprofil befindet und ordnet

es dem Objekt zu. Wird das Objekt zur Ausgabe auf den Bildschirm geschickt,

so kann automatisch eine korrekte Farbausgabe durch Verrechnung des Farbprofils

des Bild-Objekts mit dem des Bildschirm-Objekts sichergestellt werden. Erst wenn

der Programmierer in Farbfunktionen bewusst eingreifen will, ruft er entsprechende

Funktionen seines Bildobjekts auf.

Untersuchung gängiger Betriebssysteme aus Sicht des

Farbmanagements

Untersuchungskriterien:

• Implementierung

• Benutzerfreundlichkeit

• Möglichkeiten zur Profilierung des Systems

• Programmieraufwand

Windows ICM

Mit Windows 95 veröffentlichte Microsoft ICM 1.0, ein Farbmanagement-Framework auf

Betriebssystem-API-Ebene, mit Windows 98, 2000 und XP folgte ICM2.0, das sich aber

nicht wesentlich von ICM 1.0 unterscheidet. 45 Der Anwender bekommt die Möglichkeit

Farbprofile für Ein -und Ausgabegeräte festzulegen. Der entsprechende Dialog für die

Auswahl eines Bildschirmprofils ist in den erweiterten Anzeigeoptionen Farbeinstellungen

versteckt. Einen vergleichbarer Dialog findet sich bei installierten Druckern. Bei der

Installation des Betriebssystems wird dem Bildschirm standardmäßig ein sRGB-Profil

zugeordnet. Mittlerweile sorgen auch immer mehr Druckerhersteller bei der Installationsroutine

für die Treibersoftware dafür, dass die Standard-Drucker-Profile eingerichtet

werden.

Eine Möglichkeit zur Profilerstellung ist nicht vorgesehen. Der Anwender muss sich aktiv

um geeignete Zusatzsoftware zur Profilerstellung bemühen. Hier gibt es ein breites

Angebot, vom einfachen Adobe-Gamma bis hin zu Messgeräte-basierter Profilerstellung.

Der Anwendungsprogrammierer kann das API nutzen, um Farbmanagementfunktionalität

in seine Anwendung zu implementieren, falls er bereit ist einen Mehraufwand bei der

Entwicklung der Anwendung in Kauf zu nehmen. Der Großteil der Programmierer weiß

45 Introduction to Microsoft Color Management, 7.11.05 :

http://www.microsoft.com/whdc/device/display/color/icmwp.mspx

35


1.4. PROBLEMANALYSE UND AUSBLICK 36

Abbildung 1.8.: Bei Windows ICM erhält man CMM-Funktionalität durch Aufruf von

Win32-Api-Funktionen

aber entweder nicht um die Möglichkeiten oder scheut den Aufwand. Selbst Microsofts

marktführende Software wie das Office-Paket oder der Internet-Explorer unterstützen

bisher kein Colormanagement nach ICC-Standard.

Apple Color-Sync

Mit Mac System-7 veröffentlichte Apple 1993 die erste Version von ColorSync. Zur Zeit

ist die Version 3 aktuell. ColorSync ist vollständig ICC kompatibel. Die Bedienung ist

einfach, intuitiv und gut dokumentiert. Seit OS-X kamen noch einige benutzerunterstützende

Funktionen hinzu. So kann man bei OS-X-Tiger Farbprofile nicht nur anzeigen lassen,

sondern auch zwei Profile miteinander vergleichen oder einzelne Farbwerte mit dem

Farbrechner von einem Farbraum in den anderen umrechnen.

Abbildung 1.9.: Bei der Verwendung von QuickDraw oder Quartz bei der Programmierung

unter OS-X gibt es Farbmanagement ohne Mehraufwand für den Programmierer

36


1.4. PROBLEMANALYSE UND AUSBLICK 37

Farbprofile kann man entweder mit dem systemeigenen Farbhilfsprogramm visuell erstellen

oder man benutzt ein Messgerät mit entsprechender Software. Da der Mac traditionell

im DTP-Bereich sehr geschätzt wird, sind alle Messgeräte, die es für den PC gibt, auch

mit entsprechender Software für den Mac ausgestattet.

ColorSync ist tief ins System verankert, was die Programmierung von CM-fähigen Anwendungen

vereinfacht. Verwendet der Programmier QuickDraw-GX oder Quarz für die

Ausgabe auf dem Bildschirm, werden alle Bilder automatisch vom Betriebssystem für die

farbrichtige Ausgabe umgerechnet. Enthält eine Datei kein Farbprofil, so geht ColorSync

allerdings davon aus, dass die Bilddaten im Bildschirm-Farbraum vorliegen.

46 47

48

Die gute Integration von ColorSync in die Programmierumgebung hat schon mehrere

Farbmanagementfähige Webbrowser hervorgebracht. So sind Internet Explorer 4 und 5,

49 sowie der aktuelle Mac-Webbrowser Safari Colormanagement-fähig (-> 1.2.3).

Farbmanagement und Linux

Auf Unix/Linux-Systemen gibt es kein Desktop CMS, nur partielle Lösungen, die geeignet

sind CMS-Funktionen auf Anwendungsebene zu realisieren.

Am weitesten verbreitet ist das Open Source Programm Little CMS. 50 (LCMS -> 2.2.4)

LCMS wird seit 1998 entwickelt und ist zur Zeit in der Version 1.5.2 erhältlich. Es handelt

sich um eine nur 100kB große Funktionsbibliothek für die Entwicklung von CMM-fähigen

C-Programmen, kann aber auch mit Hilfe mehrerer Kommandozeilen-Programme verwendet

werden. LCMS dient vielen anderen CMS-implementierenden Anwendungen (z.B.

GIMP, CinePaint) als Farbrechner. Es kann mit vielen Bildformaten umgehen, ICC (v.4)

Profile lesen und schreiben, Farbraumtransformationen berechnen und Softproofs erstellen.

Mit LCMS lassen sich farbmanagementfähige Anwendungen entwickeln, es bleibt

jedoch immer dem Entwickler überlassen, wo Transformationen stattfinden sollen und

welche Farbprofile er den Ausgabegeräten des Systems zuordnet. Für das Internet ist

LCMS insbesondere für schnelle serverseitige Bildverarbeitung oder Stapelverarbeitung

interessant.

Die Profilerstellung unter Unix/Linux befindet sich noch in experimentellen Zustand,

was die Anwendung im Desktop-Bereich sehr erschwert. Farbprofile für Geräte können

aufgrund der unterschiedlichen Hardware-Ansteuerung auch nicht einfach von einem System

auf das andere übernommen werden. Es gibt Berichte über die erfolgreiche Erstel-

46 Apple Developper - Color Management Overview :

http://developer.apple.com/documentation/GraphicsImaging/Conceptual/csintro/csintro.pdf

47 Advanced Color Imaging on the Mac OS, Addison-Wesley Publishing Company August 1995

48 Apple Developper: Technical Note TN2035 :

http://developer.apple.com/technotes/tn/tn2035.html

49 Internet Explorer 4.01 Mac Release Notes, 7.11.05 :

http://support.microsoft.com/default.aspx?scid=kb;en-us;192270

50 CMS Funktionen für Linux: LCMS »Little Colormanagement System« :

http://www.littlecms.com

37


1.4. PROBLEMANALYSE UND AUSBLICK 38

lung von ICC-Profilen mit dem Windows-Emulator WINE mit Windows-Kalibrierungs-

Software. Das ebenfalls für alle gängigen Systeme erhältliche Argyll-CMS 51 (->2.2.4)

kann Farbprofile für Monitor, Scanner und Drucker per Messgerät erstellen, Test-Charts

und Device-Link-Profile erzeugen.

Benutzerfreundlich im Sinne einer Desktop-Anwendung ist keines der Programme. Es

handelt sich um Kommandozeilen-Tools, die vom Benutzer ein tiefes Verständnis der

Materie und eine geduldige Einarbeitung verlangen. Systemweite Lösungen befinden sich

noch in einem sehr frühen Entwicklungsstadium. Wie z.B. das Oyranos-Projekt, 52 einer

C-Library das mit dem Ziel entwickelt wird, Unix-CMM-Anwendungen eine Schnittstelle

zum Zugriff auf Voreinstellungen, wie Monitor - und Druckerprofilen zu bieten. Die

großen Distributionen lassen bisher keinerlei Aktivitäten erkennen systemweite Lösungen

bereitzustellen.

Für Anwendungsprogrammierer ist LCMS jedoch ein einfach zu benutzendes Tool, das die

Integration von CMM Funktionen mit verschiedenen Programmier- und Scriptsprachen

ermöglicht (u.a. C, C++, PHP, Perl).

Abbildung 1.10.: Bei Linux gibt es keine ausgereifte CMM Infrastruktur. Der Anwendungsprogrammierer

muss sich selber um die Implementierung von CMM und geeignete

Ausgabeprofile kümmern.

51 Experimentielles Colormanagement für Linux: Argyll CMS :

http://www.argyllcms.com

52 Experimentielle Farbmanagement Infrastruktur für Linux: Oyranos-Projekt :

http://www.behrmann.name

38


1.4. PROBLEMANALYSE UND AUSBLICK 39

Windows Longhorn / Windows Vista

Windows Vista 53 wird voraussichtlich Ende 2007 erscheinen. Microsoft ist dabei, das

Windows Farbmanagement komplett zu überarbeiten - der neue Name: Windows Color

System (WCS).

Das WCS enthält ein überarbeitetes Color Management Framework, das intern mit dem

Microsoft scRGB Farbraum (32bit/sc-Kanal) arbeitet und auf einem anderen Color-

Appearance-Modell (CIECAM02) basiert. Microsoft verspricht Kompatibilität mit ICC

v. 4 und künftigen ICC-Entwicklungen, bietet jedoch auch ein erweitertes, XML basiertes

Device Profile Modell Format (DMP-Profile). Dies bietet gegenüber dem ICC-Format

weitere Möglichkeiten, beispielsweise mehrere Weisspunkte für unterschiedliche Papiere

in einem Drucker, zuletzt vorgestellt in einem als informativ deklarierten Whitepaper.

54

Der Benutzer muss nur noch an einer zentralen Stelle Farbeinstellungen vornehmen, ein

Kalibrierungs-Wizard soll helfen das System einzurichten.

Das betagte Win32-Api wird durch das abwärtskompatible WinFX-Framework ersetzt,

das dem Anwendungsprogrammierer einen Color Context bietet, der auf einfache Weise

Informationen über vorhandene Bilddaten liefert und Transformationen ermöglicht.

55

Mit der dazu gehörenden, ebenfalls neu entwickelten Windows-Anwendungs-Oberfläche

Avalon wird die Entwicklung farbrichtig arbeitender Anwendungen um einiges einfacher,

denn WCS erhebt den Anspruch ein implizites Farbmanagement auf Betriebssystemebene

bereitzustellen.

Fazit

Während Apple und Microsoft mit ihren aktuellen, bzw. zukünftigen CM-Lösungen versuchen

den Anwendungsprogrammierer das Leben zu vereinfachen, steht der Linux/Unix

als Desktop-System etwas auf verlorenem Posten. Zwar gibt es die notwendigen Bausteine,

von einem in alle Anwendungen integrierten Color Management System ist man

jedoch weit entfernt. Die Aussicht auf einen Browser, der zumindest die gängigen Farbräume

und Bildformate korrekt darstellt ist dennoch ganz gut - das Thema »Farbmanagement

für Mozilla Webbrowser« taucht immer wieder in Foren auf. Apple hat bereits

einen Browser, der Farbprofile berücksichtigt, Microsoft wird vermutlich mit Windows-

Vista nachziehen. Unix Nutzer bleiben außen vor.

Tools für die serverseitige Bildverarbeitung sind meist für mehrere Plattformen verfügbar,

oft aber auf Unix-Systemen einfacher zu installieren und einzusetzen.

53 der Entwicklungsname war »Windows Longhorn«

54 Windows Color System: The Next Generation Color Management System, Microsoft White Paper,

Sept. 2005 :

http://download.microsoft.com/download/5/d/6/5d6eaf2b-7ddf-476b-93dc-7cf0072878e6/WCS.doc

55 Preliminary documentation for WindowsCodecs.dll APIs :

http://www.eggheadcafe.com/forumarchives/windowsdeveloperwinfxavalon/Jun2005/post23451501.asp

39


1.4. PROBLEMANALYSE UND AUSBLICK 40

1.4.2. Unterschiedliche Ausgabegeräte

Das Internet erobert ständig neue Bereiche des täglichen Lebens: »Internet am Computer

- das war gestern« wollen uns zumindest die Marketing-Strategen zahlreicher Anbieter

der verschiedensten mehr oder weniger internetfähigen Geräte glauben machen. Mittlerweile

gibt es Fernseher, Handys, Hand-Computer (Palm, PDA), Spielkonsolen, Autos und

DVD-Player mit Internet- oder LAN-Verbindung. Fernsteuerung über ein Webinterface

gehört bei einer immer größeren Anzahl von Geräten zum Standard.

Welche Dienste genutzt werden ist dabei unterschiedlich. Manche Geräte versuchen einen

vollen Internetzugang bereitzustellen, andere beschränken sich auf der jeweiligen Hardware

oder Konsumenten-Zielgruppe angepasste Funktionalität.

Doch auch beim klassischen Computer mit Bildschirm oder TFT-Display und Tastatur

hat die Entwicklung nicht aufgehört. Neben der visuellen Ausgabe per Bildschirm gibt

es Geräte für Sprachausgabe und die Ausgabe für Blinde. Sie verwenden eine Braille

Zeile. Das ist ein Lesegerät für Blindenschrift und Braille-Drucker, die in Blindenschrift

stanzen. Diese Geräte können, wie die frühen Computer keine Grafik sondern nur Text

ausgeben.

Klassifizierung der Ausgabegeräte

Die Einteilung der Ausgabegeräte nach dem Working Draft der CSS-2.1 Spezifikation.

56

• continuous / paged

Ausgabe kann eine beliebige Länge haben, bei Bedarf kann gescrollt werden /

Seitenweise Ausgabe: Das Ausgabegerät hat eine definierte Höhe und Breite.

• visual / audio / speech / tactile

Visuell, Auditiv (akkustische Effekte), Sprachausgabe, Fühlbar (Blindenschrift).

• grid / bitmap

Textausgabe mit fester Breite, wie Terminals oder die Command-Line sind character

grid devices / Ausgabe von Pixel-Rastern (Bildschirm, Projektoren).

• interactive / static

Benutzer kann mit dem Ausgabegerät interagieren (z.B. eine Maus, Tasten o.ä.

benutzen) / Keine Interaktionsmöglichkeiten (Präsentation).

56 W3C CSS-2.1 Working Darft :

http://www.w3.org/TR/2005/WD-CSS21-20050613

40


1.4. PROBLEMANALYSE UND AUSBLICK 41

CMS relevante Ausgabemedien

Für Farbmanagement sind ausschließlich Medien interessant, die der Gruppe visual und

bitmap zugeordnet werden können. Character-Devices (grid) können keine Bilder darstellen

und auf eine Software, die Bilder per Sprachausgabe beschreibt werden wir wohl

noch einige Zeit warten müssen.

Eine informative W3C Definition der einzelnen Medientypen findet sich in Abschnitt A.3.

Media

Types

Media Groups

continuous/paged visual/audio/speech/tactile grid/bitmap interactive/static

braille continuous tactile grid both

embossed paged tactile grid static

handheld both visual, audio, speech both both

print paged visual bitmap static

projection paged visual bitmap interactive

screen continuous visual, audio bitmap both

speech continuous speech N/A both

tty continuous visual grid both

tv both visual, audio bitmap both

Abbildung 1.11.: Einteilung verschiedener Ausgabemedien

Untersuchungskriterien für visuelle Ausgabemedien:

• Leistungsressourcen

Welche Hardware Ressourcen (Arbeitsspeicher und Prozessorleistung) stehen für

das Rendern der Ausgabe zur Verfügung.

• Größe, Auflösung

Wie ist die physikalische Auflösung eines Ausgabegeräts [dpi] und wie groß ist die

zu Verfügung stehende Ausgabefläche?

• Farben

In welchem Farbraum arbeitet ein Ausgabegerät?

• Qualität

Wie ist die zu erwartende Qualität der Darstellung, wenn man die genannten Punkte

berücksichtigt.

• Recommendation / Working Draft

Gibt es vom W3C schon eine Empfehlung oder einen Working Draft zum Medium?

41


1.4. PROBLEMANALYSE UND AUSBLICK 42

Analyse visueller Ausgabemedien

Screen

Dies ist der Ausgabetyp für den klassischen Computerbildschirm. Es kann sich dabei um

betagte CRT-Bildröhren und um modernste TFT-Displays handeln, die RGB-Farben

mit mehr als 8bpc darstellen können. Das Gamut ist dabei abhängig von Typ, Alter und

Qualität des Geräts.

Da ein »screen« an einem Computer angeschlossen ist, stehen im allgemeinen ausreichend

Ressourcen für Farbtransformationen zur Verfügung. Sollten Browser in Zukunft

CMM-Funktionalität bieten, ist der Screen das Ausgabemedium, bei dem CMM über

eine einfache Geräteanpassung hinaus sinnvoll wäre. Es kann von einer Auflösung von

mindestens 800x600 Pixeln ausgegangen werden, heute sind Auflösungen größer 1024x768

üblich.

Die Entwicklung der Verkaufszahlen zeigt einen eindeutigen Trend in Richtung der augenfreundlicheren

und langsamer alternden TFT-Displays.

Während man bis 2003 in der professionellen Bildverarbeitung wegen der blickwinkelabhängigen

Farbdarstellung und einem für Druckprozesse nicht ausreichendem Gamut

noch auf hochwertige Röhrenmonitore setzte, ist die Technik mittlerweile soweit entwickelt,

dass die Darstellungsqualität der besten Röhren-Bildschirme nicht mehr mit halb

so teuren TFT-Displays mithalten können. Der Trend geht hin zu hardwarekalibrierten

Geräten mit aktiver Luminanzsteuerung und einem Farbtemperatursensor zur Berücksichtigung

des Umgebungslichts.

57

Betrachtet man diese Entwicklungen vor dem Hintergrund der Entwicklungen von CMS

auf Betriebssystem-Ebene und geht davon aus, dass die Entwicklungen für Profigeräte

nach einiger Zeit auch im Consumer-Bereich Verbreitung finden, so ist Microsofts Idee

der »Out-of-the-Box-Color Experience« für den unbedarften Anwender gar nicht mehr

fern. Es wird jedoch auch für den Benutzer der ausgereiftesten Technik notwendig sein,

Einflüsse der Betrachtungsbedingungen zu bedenken. Eine Bunte Wand hinter dem Bildschirm

beeinflusst das visuelle System, wenn die Augen des Benutzers zwischen Wand

und Monitor wechseln. Mir ist kein mathematischer Ansatz bekannt solcherlei Einflüsse

zu berücksichtigen.

Handheld

Der Markt bietet heute eine große Anzahl unterschiedlichster Kleinstcomputer. Vom webfähigen

WAP-Handy mit monochromen LCD-Bild bis zum Fast-Notebook mit echtfarben

Grafik gibt es eine Anzahl unterschiedlicher Geräte.

Die Ressourcen der Geräte sind begrenzt. Die CPU-Geschwindigkeiten liegen zwischen

100 und 400 MHz, die Ausstattung mit Arbeitsspeicher variiert stark. Handys haben

monochrome oder farbige Displays, die Auflösungen variieren in Dimensionen zwischen

50x50 und 100x200 Pixel. Handheld-Geräte haben etwas leistungsfähigere Prozessoren

und Displaygrößen.

57 »Abschied von der Röhre«, MacUp 12/2004, Redtec Publishing Verlag

42


1.4. PROBLEMANALYSE UND AUSBLICK 43

Sinnvoll einteilen lassen sich die Geräte nach den unterstützen Standards. WAP (Wireless

Application Protokoll) ist eine eigene XML-Sprache, speziell für mobile Geräte.

Der XHTML-konforme Nachfolger ist das modular aufgebaute XHTML Mobile Profile.

Viele Geräte unterstützen jedoch nur ein abgespecktes HTML zwischen HTML-3.2 und

HTML-4.x.

Aktuell steht eine Candidate Recommendation 58 zur

Diskussion. Darin sind aufgrund der vorgesehenen Tastennavigation

interaktive Funktionen wie hoover ebenso

wenig vorgesehen wie die Colormanagement relevante

color-profile-Regel (->1.5.4).

Für den Webdesigner geht es eher darum, Inhalte für

mobile Geräte zugänglich zu machen. Die Darstellung

von Farbbildern ist bei modernen Geräten möglich, aber

die oft schlechte Qualität der Displays, das Fehlen von

Möglichkeiten zur Displaykalibrierung und die nicht reproduzierbaren

Betrachtungsbedingungen mobiler Geräte

lassen eine farbrichtige Anzeige unmöglich werden.

Print

Es gibt eine große Zahl unterschiedlicher Druckverfahren

und Papiersorten. Immer häufiger werden auch günstige

Consumer-Drucker mit ICC-Profilen für die Druckpapiere

des Herstellers ausgeliefert. 59 Eine genaue Profilierung

nach ICC-Standard ist bei teureren Geräten

möglich, erfordert aber entsprechende Messgeräte. Aufgrund

der großen Zahl an Druckprozessen und entsprechenden

geräteabhängigen Farbräumen verweise ich an

dieser Stelle auf einschlägige Farbmanagement Literatur.

Die Berechnung der Druckvorlagen für den jeweiligen

Drucker wird vom Druckertreiber des Betriebssystems

übernommen. Die vorgesehene Ausgabegröße kann ausgelesen

werden, damit Seitenaufteilung, die Umrechnung

von Auflösung und Ausgabegrößen auch vom Webbrowser

bestimmt werden können. Im Allgemeinen haben

Drucker einen geringeren Dynamikumfang und folglich

ein kleineres Gamut als Bildschirm-Ausgabegeräte. Bei

Consumergeräten kümmert sich der Druckertreiber um

die Umrechnung der Farben in den Farbraum des Ausgabegeräts.

Es gibt kein einheitliches, vorhersehbares Schema

wie dabei mit Farben und Farbprofilen umgegangen

wird.

Abbildung 1.12.: Webseiten

auf Kleincomputern, PDAs

und dem Handy

58 W3C Candidate Recommendation zum CSS-Mobile-Profile :

http://www.w3.org/TR/2002/CR-css-mobile-20020725

59 Die Kalibrierung nach ICC-Standard ist oft nur bei Druckern der oberen Preisklasse möglich. Offensichtlich

wollen es die Druckerhersteller den Anwendern nicht so leicht machen auf billigere Tinte von

Fremdanbietern auszuweichen.

43


1.4. PROBLEMANALYSE UND AUSBLICK 44

Das CSS-Print-Profile 60 ist für Farbdrucker gedacht. Die Implementierung von color-

Anweisungen ist auch für SW-Drucker zwingend vorgesehen. Die color-profile Regeln

müssen aber nicht zwingend unterstützt werden, um den Standard zu implementieren.

Es ist aber zu erwarten, dass es in Zukunft einen Webbrowser geben wird, der CMM-

Funktionen implementiert. Damit ließe sich ein Workflow erarbeiten, der das farbrichtige

Drucken aus optimierten Webseiten ermöglicht.

Da XML-Webseiten durch Serverseitige Verarbeitung auch in andere Formate wie beispielsweise

PDF umwandelbar sind ist es zur Zeit erfolgsversprechender die Drucke auf

diesem Wege vorzubereiten.

TV

Der Fernseher ist ein für analoge Übertragungstechnik entwickeltes Gerät. Um ihn als

Ausgabemedium für Webdokumente zu verwenden, muss er entweder an einen Computer

oder an eine Set-Top-Box angeschlossen sein. Es gibt auch schon Fernseher und

DVD-Player mit eingebautem Internetzugang. Angeschlossen an einen Computer hat

man die gleichen Leistungsressourcen zur Verfügung wie beim Screen. Das CSS-TV-

Profile des W3C

61 wurde mit Fokus auf Geräte mit begrenzten Ressourcen entwickelt.

Bezüglich Auflösung und Farben gibt es mehre Standards: Aktuell gilt in Deutschland

und vielen anderen Ländern der PAL-Standard, in den USA und Japan NTSC und in

Frankreich SECAM, das farblich jedoch voll zu PAL kompatibel ist. Das größte Problem

bei der Ausgabe auf Fernsehschirmen liegt in der geringen Auflösung und den Eigenheiten

der analogen Signalübertragung.

Abbildung 1.13.: Farbraumvergleich zwischen NTSC und sRGB

Wie viele Pixel eine Zeile auf dem Fernsehbildschirm enthält wurde bei der Entwicklung

des Fernsehstandards nicht festgelegt. Man benutzte Aufnahmeröhren, die das Bildsignal

nur in vertikaler Richtung diskretisieren (zeileweise Abtastung). Im PAL-Standard ist die

60 W3C Candidate Recommendation für das CSS-Print-Profile vom Februar 2004 :

http://w3c.org/TR/2004/CR-css-print-20040225

61 W3C CSS-TV-Profile Recommendation, Mai 2003 :

http://w3c.org/TR/2003/CR-css-tv-20030514

44


1.4. PROBLEMANALYSE UND AUSBLICK 45

Abbildung 1.14.: Farbraumvergleich zwischen PAL und sRGB

Zeilenzahl auf 575 sichtbare Zeilen festgelegt (weitere 50 Zeilen enthalten Steuersignale

und Videotext). Bei einem Bildverhältnis von 4:3 ergeben sich daraus ca. 767 Pixel je

Zeile. Mit dem Einzug digitaler Techniken hat sich eine Auflösung von 576x768 etabliert.

Die NTSC-Auflösung ist noch geringer.

Das Bild in einem Fernseher wird nicht zeilenweise erzeugt, wie bei einem Computerbildschirm.

Beim Interlaced-Verfahren - auch ein Relikt aus der analogen Fernsehtechnik

- wird das Bild aus zwei zeitlich kurz nacheinander übertragenen Halbbildern zusammengesetzt.

Das eine Halbbild beinhaltet alle geradzahligen Zeilen, das andere die ungradzahligen,

das menschliche Auge setzt die Bilder dann zu einem Ganzen zusammen.

Probleme entstehen bei der Darstellung waagerechter Linien, deren vertikale Ausdehnung

am TV-Schirm kleiner als die doppelte Zeilenhöhe ist. Dann taucht die Linie in einem

Halbbild auf, im nächsten verschwindet sie wieder (Zeilenflimmern). Da Schriften viele

horizontale Linien enthalten, lassen sich auf dem Fernsehschirm maximal 40 Buchstaben

in einer Zeile leserlich darstellen.

PAL und NTSC stammen aus der Anfangszeit des Farbfernsehens (in Deutschland 1967).

Zu dieser Zeit war es notwendig einen zum SW-Fernsehen kompatiblen Standard für die

Übertragung von Farbbildern zu entwickeln. Man verwendet einen YUV Farbraum: Das

Y-Signal entspricht dem SW-Bild, die Farbdifferenzsignale U und V sind so in das Frequenzspektrum

einmoduliert, dass sie das Bild auf einem SW-Fernseher nicht beeinträchtigen.

Wie gut die (analoge) Übertragung der Farbinformationen ist, hängt auch davon ab, wie

gut sich die mit einem Multiplexverfahren zusammengemixten Frequenzen im Endgerät

wieder trennen lassen. Das hängt von der Übertragungsqualität ab. Das Fernsehsignal

kann auf verschiedene Weise übertragen werden. Wie sich verschiedene Übertragungsverfahren

auf die Farbqualität auswirken, zeigt eine Übersicht der Übertragungsverfahren

im Anhang (->A.5).

Da Farbmanagement auf TV-Schirmen vom W3C nicht vorgesehen ist und auch wegen

des geringen Dynamikumfangs und der mangelnden Schärfe nicht sehr viel Sinn macht,

45


1.4. PROBLEMANALYSE UND AUSBLICK 46

bleibt zu untersuchen, ob die vorhandenen Fernsehfarbräume zum sRGB-Internetstandard

kompatibel sind. sRGB wurde mit dem Ziel entwickelt zu HDTV kompatibel zu sein (->

1.3.4), PAL war die Basis für die Entwicklung von HDTV. Hier ergeben sich also keine

Probleme.

High Definition Tele Vision (HDTV) wurde vor mehr als 10 Jahren für die digitale Fernsehübertragung

entwickelt, konnte sich aber noch nicht durchsetzen. Es ist ein breiteres

Bildseitenverhältnis (16:9) und eine höhere Auflösung. Wie diese genau sein soll, darüber

sind sich die Entwickler noch nicht ganz einig. Es scheint sich eine Auflösung von

1920 x 1080 Pixel durchzusetzen. Gleichzeitig gilt ein kürzerer Betrachtungsabstand.

62

Eine Internetausgabe auf HDTV bietet dem Webdesigner stark verbesserte Darstellungsmöglichkeiten.

Neben der doppelten Auflösung wird die analoge Altlast des Interlaced-

Verfahrens aus den Wohnzimmern verschwinden. Die Weltmeisterschaft 2006 wird erstmals

auch in HDTV übertragen - es bleibt abzuwarten, wann sich dieser Standard durchsetzt.

Projektion

Der Medientyp Projection ist für Geräte wie LCD- und DLP-Projektoren gedacht. Das

Liquid Crystal Display verwendet Polariationsfilter als Lichtventile zur Steuerung der

Helligkeit, der Digital Light Processor ist ein Chip mit magnetisch gesteuerten Microspiegeln,

die für jeden Pixel das Licht entweder ins Projektionsobjektiv (an) spiegeln oder

daran vorbei (aus). Helligkeitsabstufungen werden durch zeitliche an/aus Modulation erzeugt,

das träge Auge erkennt den Mittelwert. Der hohe Wirkungsgrad der DLP-Chips

ermöglicht einen Dynamikumfang, der bei qualitativ hochwertigen Geräten mit der Diaoder

Filmprojektion mithalten kann.

Wird ein Projektor über eine Computerschnittstelle, wie VGA oder DVI angeschlossen

(nicht über ein Fernsehkabel), so verfügt er über die gleiche Auflösung, wie ein screen

(ab 800x600). Die Qualität und Blickwinkelabhängigkeit der Projektion variiert mit der

verwendeten Leinwand.

Messgeräte zur ICC-Profilierung von Projektoren gibt es mittlerweile von mehreren Herstellern.

Da die Leinwand die »Papierfarbe« eines Projektors darstellt, muss dieser bei jedem

Standortwechsel, selbst bei gleichen Lichtverhältnissen neu kalibriert werden.

Das W3C erwähnt den Medientypen projection in CSS-2. Er gehört wie die Druckausgabe

zu der Gruppe der Paged Media. Es ist kein Scrollen vorgesehen, sondern eine Seitenweise

Darstellung wie bei Power Point.

Das W3C hat noch kein CSS-Profil für die Projektion entworfen. Ob CMM-Funktionen

vorgesehen sind, ist somit nicht feststellbar. Es spricht aber auch nichts dagegen, da die

Projektion über einen normalen Screen-Webbrowser im Projektions-Modus stattfinden

kann.

62 Image Formats for HDTV, John Ive, EBU Technical Review, Juli 2004 :

http://www.ebu.ch/en/technical/trev/trev_299-ive.pdf

46


1.4. PROBLEMANALYSE UND AUSBLICK 47

Bisher sieht das Angebot an Browsern, die diesen Medientyp unterstützen aber dürftig

aus: Nur Opera unterstützt ab Version 4 einen Projektionsmodus. 63

Fazit

Die Qualität der Ausgabegeräte hat sich in den letzten Jahren stetig verbessert. Homogen

darstellende TFT-Displays sind technisch einfacher und billiger zu realisieren als Röhrenmonitore

und werden mit der Zeit die klobigen Kathodenstrahler ersetzen.

Die Qualität von CMM für »Otto-Normaluser« steht und fällt mit den Bemühungen der

Betriebssystemhersteller zur Vereinfachung der Bedienung. Die Hardwarequalität von Geräten

für Screen und Projection ist gegeben, denn mittlerweile haben die billigen Displays

des Massenmarktes eine Farbwiedergabequalität erreicht, von der professionelle Grafiker

lange träumten. Die Preise für Bildschirmkolorimeter sind in den letzten Jahren stetig

gefallen, bleibt abzuwarten, wann das erste Farbmessgerät bei Aldi & Co am Wühltisch

liegt und CMM am Computer selbstverständlich wird.

1.4.3. Benutzer und Webmaster

Da die trichromatischen Farbwerte eines Bildes nur unter sorgfältig kontrollierten Betrachtungsbedingungen

der wahrgenommenen Farbe entsprechen, sind sowohl bei der

Entstehung und Bearbeitung, als auch bei der Ausgabe bestimmte Bedingungen (->

1.3.2) zu beachten.

Da sich die Problematik nicht intuitiv erschließen lässt - der Mensch tendiert dazu, das

zu sehen, was er erwartet - ist sowohl bei Webdesignern als auch bei Surfern grundlegendes

Wissen über die Farbwahrnehmung und die Einflüsse der Umgebung notwendig.

Von einem Webdesigner, der eine farblich objektive Darstellung wünscht, kann man erwarten,

dass er sich schon mit Farbwahrnehmung beschäftigt hat und seine Bilder in

einer kalibrierten Arbeitsumgebung bearbeitet.

Die Zeit für ein »Out of the Box Colormanagement« für alle Anwender ist noch nicht

gekommen, dazu verlangt die komplexe Problematik noch zuviel Hintergrundwissen vom

einzelnen Benutzer.

Ein Webmaster kann nicht viel Verständnis von einem Surfer erwarten, der »einfach nur«

einen Pullover in einer bestimmten Farbe bestellen will. Solange die Betriebssystemhersteller

das Thema Farbdarstellung stiefmütterlich behandeln kann man nicht davon ausgehen,

dass Benutzer über kalibrierte Bildschirme verfügen. Denn selbst wenn er sein

Bestes gibt, verfügt er über einen veralteten Bildschirm mit einem zu geringen Gamut,

63 codestyle.org : »Projection media browser conformance and compatibility« :

http://www.codestyle.org/css/media/projection-BrowserSummary.shtml

47


1.5. WEBSTANDARDS 48

bleiben seine Bemühungen fruchtlos.

Das künftige Windows Vista lässt Besserung erwarten. Es soll bessere Unterstützung zur

Kalibrierung der Farbausgabe geben, eine Zusammenlegung der bisher verteilten Konfigurationseinstellungen

und einen Assistenten zur Farbeinstellung.

Nicht jede Webseite ist für alle gemacht, oft kennt ein Webmaster seine Zielgruppe recht

gut und weiss, was er von seinen Besuchern an Hardware und Wissen erwarten kann. Sieht

man sich auf verschiedenen Webseiten um, kann man vier grundsätzliche Strategien bei

der Behandlung der Farbproblematik ausmachen:

• Der potentielle Kunde soll nicht verunsichert werden, weil es ihn von einer Kaufentscheidung

abbringen könnte. Es werden keinerlei Hinweise zur Farbdarstellung

gegeben.

• Ein Hinweis informiert den Surfer, dass es zu Problemen mit der Farbdarstellung

am Bildschirm kommen kann. Etwas unauffälliger sind die oft zu sehenden Hinweise

»Abbildung ähnlich« oder »Symbolfoto«.

• Eine Anleitung zur Einstellung des Bildschirms (z.B. mit einem Monitortestbild)

wird angeboten.

• Es wird alles versucht um dem Kunden eine Kaufentscheidung zu erleichtern. Z.B.

Musterversand, Katalogversand, Vertreterbesuche, Farbgemanagte PDF-Kataloge.

Die jeweiligen Strategien des Anbieters sind von den angebotenen Produkten und dem

zu erwartenden Erlös abhängig.

1.5. Webstandards

Ohne einheitliche Standards können Computer nicht untereinander kommunizieren. Im

Internet gibt es eine große Anzahl verschiedener Standards, die auf verschiedenen Abstraktionsebenen

die Kommunikation der Computer untereinander regeln. Der wichtigste

Internetstandard ist das TCP/IP Protokoll. Es regelt den Datentransport im Internet. In

diesem Kapitel sollen aktuelle und vorgeschlagene Standards des W3C untersucht werden,

die auf Basis des http-Protokolls für das World-Wide-Web entwickelt wurden und

werden. Der Fokus liegt dabei auf allen für die Farbdarstellung wichtigen Entwicklungen.

1.5.1. Grundlagen

Ein Standard ist ein allgemein akzeptiertes Regelwerk, das einzelne oder mehrere Regeln

zur Lösung einer Problemstellung zusammenfasst. Der Begriff Standard wird im englischen

Sprachgebrauch synonym für Norm oder technische Norm verwendet, die deutsche

48


1.5. WEBSTANDARDS 49

Sprache differenziert genauer.

Eine Norm ist ein allseits rechtlich anerkanntes, allgemeingültiges und durch ein Normungsverfahren

entstandenes Regelwerk, das von dem jeweiligen international oder national

anerkannten Normungsgremium beschlossen und veröffentlicht wurde. Ein Standard

muss dagegen weder Allgemeingültigkeit besitzen oder öffentlich zugänglich sein. Man

spricht auch von herstellerspezifischen Standards oder propiretären Standards, wenn es

sich um von einem Hersteller entwickelten, ggf. auch patentgeschützen Lösungsansatz

handelt. Von de-facto Standard spricht man, wenn sich ein Standard in der Praxis durchgesetzt

hat und allgemeine Anwendung findet, unabhängig davon wer für sein Entstehen

verantwortlich ist.

In dieser Arbeit wird von Webstandards gesprochen und an gegebener Stelle darauf hingewiesen,

in welchem Entwicklungsstadium sich der Standard befindet.

Validierung

Zur Überprüfung, ob ein Dokument der gewünschten Spezifikation entspricht, kann man

es validieren. Darunter versteht man die Überprüfung der standardkonformen Verwendung

der Syntax (Markup-Tags und Attribute) gemäß der in Dokumententyp-Deklaration

festgelegten Grammatik. War die Validierung erfolgreich, spricht man auch von einem

wohlgeformten Dokument. Das W3C bietet einen kostenlosen Service, bei dem man XML-

Sprachen validieren kann, den W3C-Validator. 64

Ein korrekt validiertes Webdokument hat folgende Vorteile:

• Webbrowser werden zuverlässiger in der Anzeige.

Nicht standardkonforme Dokumente zwingen den Webbrowser in einen fehlertoleranten

Kompatiblitätsmodus. Nun werden Tags nach allen irgendwie möglichen

Weisen interpretiert, der Browser versucht zu »erraten«, was der Ersteller des Dokuments

gemeint haben könnte. Da jeder Browserhersteller anders an diese Problematik

herangeht ist keine Eindeutigkeit mehr gegeben.

• Lesbarkeit für akustische Webbrowser, Suchmaschinen und Braille-Lesegeräte wird

verbessert.

Browserkompatiblität

Browserkompatibles Design ist eine wichtige Vorraussetzung für den Erfolg einer Webseite,

da die Browser die Schnittstelle des Surfers zu den Inhalten darstellen. Niemandem

nützt eine schöne Seite, wenn sie entweder nicht fehlerfrei, oder teilweise gar nicht angezeigt

wird.

64 W3C-Validator.:

http://validator.w3.org

49


1.5. WEBSTANDARDS 50

Man kann zwei Aspekte der Browserkompatiblität betrachten:

1. Die sinngemäße Kompatibilität. Darunter versteht man, dass eine Seite zumindest

so angezeigt wird, dass ihre wesentlichen Inhalte und Strukturen zugänglich sind

und die Navigation funktioniert.

2. Die Exakte Kompatibilität bezieht sich im wesentlichen auf die pixelgenaue Darstellung

von Internet-Seiten. Inwiefern eine pixelgenaue Gestaltung im www überhaupt

sinnvoll (Auflösungsunabhängige Darstellung nicht mehr gegeben) und möglich ist

(unterschiedliche Interpretation von Abständen duch Webbrowser), darüber lässt

sich sicher streiten.

Standards und Webdesigner

Kein Webdesigner, der nicht von seinem Arbeit - oder Auftraggeber dazu verpflichtet

wurde, ist dazu gezwungen, sich an irgendwelche Webstandards zu halten. Dennoch kann

es für ihn von Vorteil sein, wenn er sich daran hält:

• Es lassen sich Vorhersagen über das Layout für unterschiedliche Browser treffen,

wenn diese den Standard unterstützen.

• Man kann die technische Qualität einer Arbeit durch die Validierung nach einem

Standard verifizieren und dadurch einem Kunden einen objektiven, nachprüfbaren

Bewertungsmaßstab anbieten.

Standards und Webbrowser

Entwickler von Webbrowsern können im Prinzip auch ihre eigenen Ideen umsetzten,

sofern sie dazu in der Lage sind sich auf dem Markt damit durchsetzen. Da Anbieter

von Webinhalten aber Interesse daran haben, dass möglichst viele Menschen ihre Inhalte

lesen, sehen oder hören können, besteht ein gewisses Interesse an einer gemeinsamen

Sprache.

Im Internet ist die Entwicklung von Standards sehr eng mit Ihrer Akzeptanz verknüpft. So

ist Macromedia Flash zwar ein proprietärer, doch allgemein akzeptierter Standard zur

Verwendung von animierten Vektorgrafiken im Interenet. Flash wird zwar von keinem

Browser direkt unterstützt, doch liefern die meisten Browser entweder ein Plug-In gleich

in der Basisinstallation mit oder der Anwender installiert es nachträglich.

Die Problematik bei neuen Standards ist folgende: Gibt es keinen Browser, der einen

Standard unterstützt, ist die Entwicklung von Inhalten, die sich an den neuen Standard

halten zum einen schwierig und zum anderen unwirtschaftlich. Sind aber keine Inhalte

für einen neuen Standard vorhanden, ist es für die Entwickler von Webbrowsern nicht

dringlich diesen Standard zu unterstützen.

50


1.5. WEBSTANDARDS 51

1.5.2. Das World Wide Web Consortium (W3C)

Nach dem »Feature Wildwuchs« mit Tags, die mal von dem einen mal von dem anderen

Browser unterstützt werden, schlossen sich 1994 verschiedene Firmen, Organisationen

und Einzelpersonen zum World Wide Web Consortium zusammen. Heute sind es ca.

400 Organisationen und ca. 60 Mitarbeiter, die in rund 50 Arbeitsgruppen (Working-,

Interest- und Coordination-Groups) die Entwicklung allgemein akzeptierter Standards

für das Internet voranzutreiben.

65

Das W3C hat sich zum Ziel gesetzt technische Richtlinien, sogenannte »Empfehlungen«

(Recommendations) zu veröffentlichen. Sie werden in Arbeitsgruppen nach einem vorgegebenen

Ablaufschema entwickelt. Es handelt sich »nur« um defakto-Standards, da das

W3C keine international anerkanntes Normungsgremium wie beispielsweise die International

Standard Organisation (ISO) ist.

Wird eine Technik sowohl von verbreiteten Webbrowsern unterstützt, als auch von Webdesignern

angewendet, hat sie sich durchgesetzt und wird dadurch zum defakto-Standard.

Das W3C hat sich auch darauf verpflichtet ausschließlich patentgebührenfreie (Royaltyfree)

Techniken zu unterstützen und dadurch ein langfristiges Wachstum des Internets

zu gewährleisten. Weitere allgemeine Entwicklungsziele der W3C-Arbeitsgruppen sind

Herstellerunabhängigkeit (Vendor Independendence), Hardwareunabhängigkeit (device

independence), Zugänglichkeit für Menschen mit Behinderungen (Accessibility) und die

Verlässlichkeit der entwickelten Techniken. Auch gibt es Arbeitsgruppen, die damit beschäftigt

sind, W3C-Techniken in Form von OpenSource Software zu implementieren, um

die Entwicklung der Standards um Implementierungsbeispiele zu ergänzen und dadurch

die Arbeit der Browser-Entwickler zu vereinfachen, wie z.B. der Amaya Webbrowser.

66

Die Entwicklung der Empfehlungen findet im Internet 67 statt: Zwischenschritte werden

veröffentlicht und die Gruppen diskutieren in privaten und öffentlichen Mailinglisten.

Auch Nicht-Mitglieder werden aufgerufen Ideen und Vorschläge einzubringen. Ein

weiterer Teil der Entwicklungsarbeit wird im Rahmen von Konferenzen und Tagungen

geleistet. Neben der englischsprachigen W3C Website gibt es nationale Büros, die eigene

Webseiten betreiben und die Empfehlungen teilweise in andere Sprachen übersetzen, so

auch die Webseite des deutschen W3C-Büros 68

65 Mitglieder und Organisationen des W3C :

http://www.w3.org/Consortium/Member/List

66 W3C Webbrowser: Amaya :

http://www.w3.org/Amaya

67 Alle W3C-Dokumente sind über die W3C Website zu erreichen :

http://www.w3c.org

68 Die Webseite des deutschen W3C-Büros :

http://w3c.de

51


1.5. WEBSTANDARDS 52

Mitglieder des W3C

Prinzipiell kann jede Einzelperson, Organisation oder jedes Unternehmen Mitglied des

W3C werden und sich in einer oder mehrerer Arbeitsgruppen an der Entwicklung von

Standards beteiligen. Es wird ein Mitgliedsbeitrag erhoben, der abhängig von Herkunftsland

und Mitgliedsart unterschiedlich ausfällt. 69

Der Entwicklungsprozess eines W3C Standards

Bevor der Abschluss einer Entwicklung in einem Standard, einer Recommendation (CR)

manifestiert wird, muss er einen Standardisierungsprozess nach den Regeln des W3C

durchlaufen. Ein Prozess, der sich durchaus einige Jahre hinziehen kann, da die jeweiligen

Arbeitsgruppen zu einer einvernehmlichen Lösung (consensus) finden müssen. Neben

norminativen Empfehlungen veröffentlichen die Arbeitsgruppen auch informative Notizen

(Notes), die ergänzende Hinweise und Bemerkungen enthalten.

Formalisierter Entwicklungsprozess

Bei der Analyse der Standards ist es wichtig den Entwicklungsstatus im Auge zu behalten.

Es kann durchaus passieren, dass Teile eines Arbeitsentwurfs in der abschließenden

Empfehlung nicht mehr auftauchen. Kurz zusammengefasst gibt es fertige Standards,

»W3C-Recommendations« (REC) und solche, die sich noch in der Entwicklung befinden.

Im Anhang unter A.2 sind die formalen Zustände (Status of Document) beschrieben, in

denen sie eine Entwicklung befinden kann.

Akzeptanz der Standards

Ein wesentlicher Faktor für die Akzeptanz eines Standards liegt darin, ob Entwickler von

Webbrowsern sich zur Umsetzung einer Recommendation entschließen. Solange nur ein

kleiner Teil der Webbrowser die Anforderungen einer Recommendation unterstützt, sind

Webentwickler, die nicht einen Teil der Besucher ausschließen wollen, dazu gezwungen

alternative Zugriffsmöglichkeiten bereitzustellen.

Eine nicht vernachlässigbare Stellung nimmt dabei der jeweils aktuelle Microsoft Webbrowser

ein, der fest in die weltweit verbreitetesten Desktop-Betriebssysteme des Herstellers

implementiert ist.

Betreiber einer Website sind darauf angewiesen beim Design ihres Angebots darauf zu

achten, dass sie nur Standards verwenden, die Webbrowser ihres Zielpublikums auch

69 Mitglieder aus Entwicklungsländern bezahlen beispielsweise deutlich weniger für eine gleichberechtigte

Teilnahme und Non-profit Organisationen weniger als Unternehmen

52


1.5. WEBSTANDARDS 53

unterstützen. So kann es beispielsweise für den Betreiber einer Macintosh-Webseite vertretbar

sein, dass er Funktionen verwendet, die nur vom Apple-Safari Webbrowser unterstützt

werden, während der Betreiber einer Windows-Website damit wahrscheinlich

nahezu 100% seiner Besucher verärgern würde.

In Deutschland hat die Akzeptanz moderner Webstandards seit der Verordnung zur

Schaffung barrierefreier Informationstechnik

70 einen Aufschwung erhalten. Die Verordnung

verpflichtet Behörden und Öffentlich Rechtliche Medien ihre Webseiten für Behinderte

nutzbar zu gestalten, so müssen für öffentliche Auftraggeber arbeitende Webentwickler,

sich an die »Zugänglichkeitsrichtlinien für Web-Inhalte« 71 halten. Die Richtlinien

implizieren die korrekte Validierung der Webseiten und erhöhen die Lesbarkeit auf

den unterschiedlichen Ausgabegeräten erheblich.

Ein angenehmer Nebeneffekt: Auch Suchmaschinen sind »blind«. Die Crawler der Suchdienste,

das sind Programme die automatisiert das Internet durchsuchen, um die Indexe

der Suchdienstbetreiber zu aktuallisieren, sehen die Seiten so, wie sie auf einem Textbrowser

(z.B. Lynx 72 ) angezeigt werden. Eine Braille Lesezeile oder ein Sprachbrowser

»sehen« auch nur die Textanteile des Webdokuments. Wenn sich der Crawler einer Suchmaschine

also gut auf einer Seite zurechtfindet, hat man beim ständigen Wettbewerb um

die besten Plätze bei google, yahoo & Co eine gute Ausgangsbasis.

Langsam setzt sich bei Webdesignern und Browserentwicklern die Einsicht durch, dass

Standards die Entwicklung der Webinhalte und auch der Browser vereinfachen, auch wenn

die Verlockung für den Marktführer groß bleibt, mit einer neuen Browsergeneration die

ein oder andere proprietäre Technik auf dem Markt zu etablieren.

1.5.3. Die W3C-Techniken

Das W3C hat sich zum Ziel gesetzt die Möglichkeiten des Internets bestmöglich zu nutzen.

Allgemeine Entwicklungsziele sind die einfache Erstellung und Verarbeitung von

multimedialen Daten für alle internetfähigen Geräte. Daraus folgt, dass die Entwicklungen

Platformübergreifend funktionieren, den unterschiedlichen Anforderungen der Ausgabegeräte

(->1.4.2) genügen und international übliche Zeichensätze unterstützen sollen.

XML als Basis

Nachdem die Erfindung von www und HTML dem Internet zum gesellschaftlichen Durchbruch

verholfen hat, erkannte man bald, dass HTML mit seiner starren Form künftigen

70 Behindertengleichstellungsgesetz, Bundesgesetzblatt 27.4.2002 :

http://bundesrecht.juris.de/bitv/index.html

71 Web Content Accessibility Guidelines 1.0, 5. Mai 1999 :

http://www.w3.org/TR/WAI-WEBCONTENT

72 Textbrowser: Lynx :

http://lynx.browser.org

53


1.5. WEBSTANDARDS 54

Anforderungen nicht gewachsen ist. Es musste ein allgemeinerer Weg gefunden werden

mit strukturierten Daten umzugehen.

Strukturierte Daten findet man z.B. in so unterschiedlichen Dingen wie Kalkulationstabellen,

Adressbücher, Konfigurationsparameter, finanzielle Transaktionen und technische

Zeichnungen. Daten gelten als strukturiert, wenn sie in ein vorher wohldefiniertes

Schema eingeordnet werden können. Ein Beispiel hierfür sind Datenbanken in einem Datenbankschema.

Strukturierte Dokumente zeichnen sich dadurch aus, dass man explizit

nach Inhalt und logischer Struktur unterscheiden kann. Der Vorteil daran ist ein hohes

Maß an Flexibilität, denn die Struktur erlaubt eine automatische Verarbeitung nach den

logischen Kriterien.

Die Muttersprache von HTML, Standard Generalized Markup Language (SGML) 73 erwies

sich als zu allgemein und zu schwierig umsetzbar, als dass sich an der Erfolg von HTML

auf weitere Techniken übertragen ließe . So entschied man sich, eine weitere SGML-

Sprache mit dem Ziel zu entwickeln, beliebige Markup-Dokumente zu erstellen: Die erste

XML-Recommendation wurde im Februar 1998 veröffentlicht.

Die wichtigsten Eigenschaften von XML:

• lizenzfrei, plattformunabhängig und gut unterstützt. Es gibt viele Programme und

Tools für die Erstellung und Verarbeitung von XML. Für alle gängigen Programmiersprachen

gibt es Bibliotheken oder andere Ergänzungen zur Verarbeitung von

XML-Daten. Auch Microsoft stellt seine Office-Reihe auf XML-basierte Datenformate

um.

• Freie Dokumentdefinitionen

HTML und XML sind das Klartextformat und das Prinzip der Tags (Elemente)

gemeinsam. Der Vorteil von XML besteht darin, dass man mit den Konzepten und

Regeln eigene Auszeichnungssprachen definieren kann.

– Strukturierte Inhalte

Die XML-Spezifikation 74 gibt vor, wie man Regeln für erlaubte Elemente,

Attribute und Verschachtelungsmöglichkeiten einer XML-gerechten Auszeichnungssprache

erstellt. Die jeweils verwendeten Tags werden in der Dokumenttyp-Definition

(engl. Document Type Definition, DTD) festgelegt, die dann

per Link mit dem XML-Dokument verknüpft wird.

Anhand der DTD kann eine XML-Anwendung prüfen, ob ein Dokument wohlgeformt

ist und somit die technische saubere Umsetzung eines Dokuments sicherstellen.

Ein Entwickler kann eine eigene DTD erstellen, um sein individuelles

Datenformat festzulegen oder auf durch andere W3C-Recommendations

standardisierte DTD, wie z.B. XHTML 1.0 Strict, SVG 1.1 oder SMIL 2.0

verweisen.

73 ISO 8879,1986

74 Extensible Markup Language (XML) 1.1, W3C Recommendation, Feb. 2004 :

http://www.w3.org/TR/xml11/

54


1.5. WEBSTANDARDS 55

– Sichere Datenbasis mit Schemas

Mit XML-Schemas kann definiert werden, welche Elemente Daten enthalten

müssen und welche auch leer bleiben dürfen und welche Datentypen oder

Wertebereiche erforderlich sind. Nun kann eine XML-Anwendung auch prüfen,

ob die Inhalte den gewünschten Anforderungen entsprechen. Man spricht

von einem gültigenDokument, wenn die Bedingungen erfüllt sind. Ziel ist es

einen Mechanismus bereitzustellen, der verlässliche Datenbestände sicherstellen

kann. XML-Schemas werden als Nachfolger der DTD gehandelt, da sie die

gleichen Anforderungen erfüllen können und zudem selbst XML-Dokumente

sind.

• Namensräume

Während bei HTML das gesamte Dokument einem einheitlichen Syntax für die

Darstellung der Elemente unterliegt, ist es mit XML möglich Bereiche festzulegen,

sogenannte Namensräume (namespaces), in denen jeweils eine eigene Namensraum-

Definition gültig ist. So wird es möglich, in einem Dokument verschiedene XMLbasierte

Sprachen gleichzeitig zu verwenden, z.B. ein XHTML-Dokument mit Formeln

aus MathML und Grafiken aus SVG aufzumischen.

75

• Zeichensätze

XML Dokumente können in verschiedenen Zeichensätzen

76 erstellt werden. Dadurch

können die Sonderzeichen aller internationalen Zeichensätze berücksichtigt

werden.


Wird kein Zeichensatz angegeben, gilt der Unicode-gerechte Zeichensatz 77

• Beleibige Tags (Elemente)

Neben standardisierten DTD, wie z.B. XHTML, MathML oder SVG lassen sich

eigene erstellen. So wird es möglich, für beliebige strukturierte Daten eine DTD

oder ein Schema zu erstellen. Beispielsweise ließe sich ein eigenes XML-Format

erstellen, um Nachrichten zu speichern.


XML ist eine flexible Sache

Die neue Definitionssprache für Auszeichnungssprachen.

20.10.2001

Thorsten Krug


• Unabhängig vom Ausgabemedium XML ist ein universelles Datenformat. Neben

der einfachen Verarbeitung in Datenbanken oder Anwendungsprogrammen bietet

das W3C mit den Cascading Style Sheets und der Extended Stylesheet Language

75 Beispiel für gemischte Namensräume :

http://colormanagement.digitaldonkey.de/xhtml-svg-mathMl

76 Zeichensätze im Überblick :

http://www.fontstuff.net/deutsch/typografie/schrift/lexikon/Zeichensatz

77 Unicode Zeichensatz: ISO/IEC 10646 :

http://www.unicode.org

55


1.5. WEBSTANDARDS 56

(XSL) Mechanismen, die Daten in den unterschiedlichsten Medien für die Ausgabe

zu formatieren(-> 1.5.3).

Dies ermöglicht »cross Media Publishing«, die kostengünstige Mehrfachnutzung

von Inhalten in verschiedenen Medien. So kann beispielsweise ein Unternehmen

seine Produktinformationen für einen Katalog, die Website und eine multimediale

Promotion CD aufbereiten und aus der gleichen Datenbasis Angebotsschreiben für

Kundenanfragen per Post und E-Mail erstellen.

• Verlinkbar XHTML Dokumente können wie HTML-Seiten miteinander verlinkt

werden.

• Interaktiv Das Document Object Model (DOM) erlaubt es XML-Strukturierte

Dokumente mit Programmiersprachen, wie z.B. Javascript zu bearbeiten. Man kann

auf einfache Weise auf beliebige Elemente zugreifen, sie auslesen, animieren oder

die Element-Inhalte bearbeiten.

XHTML

Die W3C-XHTML-Working-Group 78 arbeitet an der Weiterentwicklung des erfolgreichen,

aber etwas in die Jahre gekommenen HTML 4.0 Standards. Die HTML 4.0 Recommendation

wurde 1997 veröffentlicht, der Nachfolger HTML 4.1 brachte nur geringfügige

Korrekturen.

Entwicklungsziele sind die Reduzierung der Entwicklungskosten für Webseiten durch eine

vereinfachte Integration von Daten aus Datenbanken und der Aufteilung (Modularisierung)

der Funktionen. Der Sinn der Modularisierung liegt darin, den unterschiedlichen

Fähigkeiten verschiedener Browser Rechnung zu tragen (-> 1.4.2). Die gleichen Inhalte

sollen ohne großen Aufwand sowohl auf leistungsstarken Desktop-Computern, als auch

auf Geräten mit begrenzten Kapazitäten, wie Handheld-Computern, veröffentlicht werden

und die Möglichkeiten der Geräte optimal nutzen.

XHTML 1.0

Der erste Schritt war die Entwicklung von XHTML, das seit Januar 2000 als Empfehlung

des W3-Konsortiums vorliegt. Der Standard ist eine Neufassung von HTML 4.1 basierend

auf XML. Dies hat folgende Vorteile:

• Kompatiblität zu allen anderen XML-Sprachen.

• Die einheitliche XML-Syntax erleichtert die Verwendung von Scriptsprachen.

• Vereinfachung der Verwendung von Style-Sprachen.

XHTML 1.0 ist eine XML-kompatible Version von HTML 4.1, die besonders Webdesi-

78 W3C-XHTML-Working-Group:

http://www.w3.org/MarkUp

56


1.5. WEBSTANDARDS 57

gnern den Umstieg auf XML-basierte Techniken vereinfachen soll. Berücksichtigt man

einige Ausnahmen, ist auch eine Kompatiblität mit älteren HTML 4 Browsern gewährleistet.

79

Um den Umstieg weiter zu vereinfachen gibt es drei verschiedene XHTML-1.0-DTD:

• HTML 1.0 Strict ermöglicht die strikte Trennung von Inhalt und Layout. Es sind

nur HTML-Elemente ohne Layoutangaben erlaubt, das Design kann mit CSS beeinflusst

werden.

• XHTML 1.0 Transitional bietet eine bessere Abwärtskompatiblität mit älteren

Webbrowsern, die nicht mit CSS-Stylesheets zurechtkommen.

• XHTML 1.0 Frameset ermöglicht die Verwendung von Frames.

XHTML 1.1 , XHTML 2 und Module

Die Weiterentwicklung steht ganz unter dem Motto der Modularisierung. Es soll eine

verlässliche Basis geschaffen werden, dass sowohl Entwickler von Webbrowsern, als auch

die Webdesigner genau spezifizieren können, welche Funktionen ihr Produkt unterstützt.

Heute ist es üblich, entwickelte Webseiten auf den verschieden, bei der Zielgruppe zu

erwartenden Webbrowsern zu testen, da manches Element mangels standardkonformer

Browserunterstützung die ein oder andere Überraschung bereithält. Die Idee: der Entwickler

gibt an, welche Module sein Webbrowser (vollständig!) unterstützt und der Designer

verwendet in seiner Anwendung nur Module, die von den Browsern seiner Zielgruppe

auch unterstützt werden.

Modularisierung bedeutet also die Aufteilung des XHTML 1.0 Strict Standards in eine

Sammlung von einzelnen Modulen (z.B. Table Modules, Image Module, Object Module,

Metainformation Module ...). Die Module können miteinander und mit anderen Modulen

kombiniert werden, um erweiterte XHTML-Dokumenttypen nach den Anforderungen des

Webdesigners zu entwickeln, deren Teilmengen untereinander kompatibel sind. Das Modulkonzept

vereinfacht die Integration künftiger Entwicklungen, indem Teile der Sprache

durch verbesserte Module ersetzt werden können, ohne den Rest der Sprache zu beeinflussen.

Dies ermöglicht individuelle Entwicklungen neuer, hybrider Dokumenttypen bei

gleichzeitiger Standardkompatibilität und Validierbarkeit, sowie neue Konzepte für Webbrowser,

bei denen eine nicht vorhandene Modul-Funktionalität automatisch nachgeladen

werden kann.

80

XHTML 1.1 (REC) wurde entwickelt, um einen konsistenten Dokumenttypen zu schaffen,

der als Basis für erweiterte Dokumenttypen der XHTML-Familie dienen kann. Es handelt

sich um eine Reformulierung von XHTML 1.0 Strict durch XHTML-Module. Abwärtskompatibilität

zu HTML 4.x ist nicht mehr gegeben. Entwickler können XHTML 1.1 als

Basis nehmen und weitere Module implementieren, um neue Doctypes für individuelle

79 Richtlinien für die Erstellung von HTML-4 kompatiblem XHTML :

http://www.w3.org/TR/xhtml1/#guidelines

80 W3C Empfehlung zur Modularisierung von XHTML :

http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410

57


1.5. WEBSTANDARDS 58

Aufgabenfelder zu entwickeln.

81

XHTML 2.0 (WD) wird eine konsequente Weiterentwicklung der durch XHTML 1.1 vorgegebenen

Linie mit erweiterter Modul-Unterstützung.

82

XHTML Basic (REC) ist eine minimale modulbasierte Version von XHTML, die entwickelt

wurde, um Geräte mit eingeschränkten Möglichkeiten, wie PDA, Set-top-Boxen

etc. zu unterstützen.

83

Layout für alle - CSS

Cascading Style Sheets (CSS) sind eine Möglichkeit strukturierte Daten wie HTML- oder

XML-Dokumenten zu formatieren und somit das Layout unabhängig vom Inhalt eines

Dokuments festzulegen, indem man dem Inhalt von Elementen bestimmte Formatanweisungen

zuordnet.

• Für visuelle Ausgabemedien kann man u.a. Schriftarten und -Stile, Farben für

Text, Rahmen und Hintergründe festlegen, Einzüge und Abstände der Elemente

bestimmen und somit komplette Layouts entwerfen.

• Für Sprachausgabegeräte können u.a. verschiedene Stimmen, Sprechpausen und

Betonungen festgelegt werden.

• Für Braille und Blindendrucker.

CSS-Styles können einzelnen Elementen zugeordnet

werden oder mittels IDs oder Klassen referenziert

werden, wobei die Styles entweder im Dokument

selbst oder in einer verlinkten externen

Datei definiert werden. So kann eine CSS-Datei

für die Formatierung mehrerer Seiten einer Webanwendung

verwendet werden, Änderungen am Layout

oder der Farbgebung gelten dann automatisch

für alle verknüpften Seiten, was den Aufwand und

somit die Entwicklungskosten reduziert.

Abbildung 1.16.: Braille Lesegeräte

ermöglichen Blinden das Lesen von

Texten am Computer

Dem Begriff der Kaskadierung von Stylesheets liegt

das Prinzip der Vererbung (inheritance) zugrunde:

Eine Style-Definition für ein Element gilt gleichzeitig

für enthaltene Elemente, wenn sie nicht explizit überschrieben wird.

81 XHTML 1.1 - W3C-Recommendation vom 31. Mai 2001 :

http://www.w3.org/TR/2001/REC-xhtml11-20010531

82 W3C XHTML 2.0 Working Draft, Mai 2005 :

http://www.w3.org/TR/2005/WD-xhtml2-20050527

83 W3C XHTML-Basic Recommendation, Dezember 2000 :

http://www.w3.org/TR/2000/REC-xhtml-basic-20001219

58


1.5. WEBSTANDARDS 59

BILDSCHIRMDARSTELLUNG

IM WEBBROWSER

LIENEARE DARSTEL-

LUNG

(CONTINUOUS MEDIA)

SYTHESIZER FÜR

SPRACHAUSGABE

LINEARE DARSTELLUNG FÜR

EINFACHE ZUGÄNGLICHKEIT

HANDHELD

DRUCKAUSGABE

PROJEKTION

SEITENWEISE

DARSTELLUNG

(PAGED MEDIA)

Abbildung 1.15.: Eine Webseite für unterschiedliche Ausgabemedien

59


1.5. WEBSTANDARDS 60

Ein weiter Vorteil bei der Verwendung von CSS besteht darin, dass für Unterschiedliche

Ausgabemedien (media types->A.3) eigene Formatanweisungen definiert werden

können, was einen medienneutralen Produktionsprozess vereinfacht. Es lassen sich z.B.

Elemente für die Navigation auf einer Webseite, die am Bildschirm notwendig sind und

auf einem Ausdruck störend wirken mit einer entsprechenden Anweisung leicht verstecken.

Profiles und Modularisierung von CSS

Aufgrund des großen Umfangs der möglichen Formatierungen (allein das Inhaltsverzeichnis

der CSS-2.1 Spezifikation 84 umfasst ca. 10 Seiten) hat man in der Version 2 der

CSS-Spezifikation damit begonnen, den Standard in kleinere Teile zu zerlegen und wie

auch XHTML-1.1 zu modulisieren.

Es ist ausdrücklich nicht notwendig, dass ein Webbrowser alle Möglichkeiten von CSS

unterstützt. Es ist aber für den Webdesigner elementar zu wissen, welchen Formatanweisungen

auf welchen Medien möglich sind. Mit einem »Profile« wird festgelegt, welche

CSS-Module von einem Medientypen unterstützt werden, woraus implizit folgt, welche

Formate der Webdesigner verwenden darf.

Medientypen

Um die Ausgabe von Webdokumenten an verschiedene Ausgabegeräte (->1.4.2) anzupassen,

kann man CSS-Medientypen (media) verlinken. Der Webbrowser erkennt seinen

Medientypen in den CSS-Angaben und stellt die Seite so dar, wie es sich der Webdesigner

für dieses Ausgabemedium vorgestellt hat.

Im Allgemeinen kann ein Webbrowser nur einen Ausgabetypen unterstützen. Ausnahmen

sind Browser, die einen anderen Medientypen simulieren (Druckvorschau) oder auf

mehrere Ausgabegeräte zugreifen können, wie Screen-Webbrowser mit der Option zum

Drucken.

Eine Auflistung der Medientypen findet sich im Anhang (->A.3).

Ein Stylesheet für jedes Ausgabemedium

Die Zuordnung eines Meda-types auf drei unterschiedliche Arten mit den für das Medium

gewünschten CSS-Stilen verknüpft werden: 85

• Importieren einer Style Datei für ein Medien Typen mit der @import-Regel. Z.B.

@import url("fancyfonts.css") screen;

• Angeben der Styles in einem Abschnitt der CSS-Datei:

@media print {

/* Stile für den Druck */

}

84 W3C CSS 2.1 Working Draft, Juni 2005 :

http://www.w3.org/TR/2005/WD-CSS21-20050613/

85 Es gibt auch die Möglichkeit CSS-Stile im Webdokument festzulegen.

60


1.5. WEBSTANDARDS 61

• Definition des Media-types mit als Tag-Element im Header-Teil des Webdokuments.

Z.B. HTML 4.x




Link to a target medium






The body content ...



CSS Versionen

Der CSS-1 Standard (REC) 86 wird von allen gängigen Browsern gut unterstützt. Mit

CSS-2 (REC)

87 wird die Unterstützung verschiedener Medien-Typen (->1.4.2) eingeführt.

Nun ist es möglich für definierte Medien ein unabhängiges Layout per Stylesheet

festzulegen. Das »paged Media Module« ermöglicht die seitenweise Darstellung

der ursprünglich endlosen Dokumente, Unterstützung für Aural-Stylesheets wird eingeführt.

CSS-2.1 (WD) 88 hat das Entwicklungsziel bekannte Probleme von CSS-2 zu korrigieren,

allgemein akzeptierte Umsetzungen zu integrieren und von keinem Browser implementierte

Teile der Spezifikation zu entfernen. Dabei soll CSS-2.1 kompatibel zu aktuellen

Browsern bleiben.

CSS-3 (WD) 89 liegt die Idee der vollständigen Modularisierung zugrunde. Es soll möglich

werden, Teile (Module) der Spezifikation zu ändern, ohne dass der komplette Standard

überarbeitet werden muss. Browser-Entwicklern wird die Möglichkeit gegeben, genau

zu spezifizieren, welche CSS-Module der Webbrowser unterstützt und Webdesignern ein

verlässliches Mittel herauszufinden, auf welchen Browsern ihre Webseite wie gewünscht

angezeigt wird, ohne dass sie aufwändige Tests vornehmen müssen.

86 W3C CSS-1 Recommendation vom Dezember 1996 :

http://www.w3.org/TR/CSS1

87 W3C CSS-2 Recommendation vom Mai 1998 :

http://www.w3.org/TR/1998/REC-CSS2-19980512

88 CSS-2.1 Working Draft Juni 2005 :

http://www.w3.org/TR/CSS21/css2.pdf

89 Introduction to CSS3 - ein überblick über vorgesehne CSS-3 Module :

http://www.w3.org/TR/2001/WD-css3-roadmap-20010406

61


1.5. WEBSTANDARDS 62

Weitere W3C-XML-Sprachen

SVG - Scalable Vector Graphics

Der aktuell verbreiteteste Standard für Vektorgraphiken im Web ist das 1996 von Macromedia

veröffentlichte Flash Format.

90 Vektorgrafiken eignen sich zur auflösungsunabhängigen

Darstellung von Grafiken, wie Statistiken, Charts, Straßenkarten und animierten

Online-Spielen. Das W3C hat im Jahr 2001 den ersten Versuch gestartet Macromedias

proprietärem 91 Standard ein offenes, XML-basiertes Format entgegenzusetzen.

92

Wie alle Sprachen der XML-Familie ist SVG leicht mit serverseitigen Scriptsprachen zu

erstellen: Börsenkurse oder Wahlergebnisse lassen sich somit leicht aus vorhandenen Datenbeständen

erstellen. Auf Clientseite kann dem Benutzer über Javascript und DOM interagieren.

Mit der Unterstützung durch Webbrowser sieht es noch dürftig aus, doch außer

Microsoft arbeiten fast alle Browserentwickler an SVG-Unterstützung. 93

MathML

Mathematiker haben es seit jeher schwer ihre Arbeiten digital zu publizieren. Zwar bieten

professionelle Mathematikprogramme die Möglichkeit HTML zu exportieren, doch

werden Formeln oft als gif-Grafiken in die exportierten Dokumente eingefügt, was das

Abspeichern, den auflösungsunabhängigen Druck und Copy&Paste schwierig bis unmöglich

macht. MathML 94 bietet ein XML-basiertes Format für alle, die komplexe Formeln

leserlich im Web veröffentlichen wollen.

XHTML + MathML + SVG - Ein Beispiel

Ein schönes Beispiel, wie künftig die Vermischung der verschiedenen W3C Techniken

realisiert werden soll. Vektorgrafiken (SVG), mathematische Formeln (Math ML) und

XHTML lassen sich in ihren jeweiligen Namensräumen innerhalb eines Dokuments verwenden.

Opera 8.0 95 ist der erste Browser und zur Zeit noch einzige Webbrowser der

diesen Dokumenttyp darstellen kann.

96

Ein kleines Beispiel dazu findet sich auf der Webseite 97 zu dieser Arbeit.

90 Informationen über Macromedia Flash :

http://openswf.org/spec.html

91 Für die Erstellung der in binärem Datenformat gespeicherten swf-Dateien ist man auf das kostenpflichtige

Programm Macromedi Flash angewiesen. Macromedia von gehört heute zu Adobe-Systems

92 Mittlerweile gilt die SVG-1.1 Specification, W3C Recommendation Januar 2003 :

http://www.w3.org/TR/2003/REC-SVG11-20030114/

93 Ein vom Autor bei Mediaevent verfasster Artikel befasst sich mit der Browserunterstützung von SVG,

Nov. 2005 :

http://www.mediaevent.de/article.php/20060103130224175

94 W3C MathML 1.1 Recommendation vom Juli 1999 :

http://www.w3.org/1999/07/REC-MathML-19990707

95 Webseite des Webbrowsers Opera :

http://www.opera.com

96 Ein XHTML-Profil, das die Vermischung von XHTML, MathML und SVG ermöglicht :

http://w3c.org/XHTMLplusMathMLplusSVG

97 Beispiel für gemischte Namensräume :

http://colormanagement.digitaldonkey.de/xhtml-svg-mathMl

62


1.5. WEBSTANDARDS 63

1.5.4. Das W3C über Farben

In Webdokumenten werden Farben für die visuelle Gestaltung eingesetzt und finden sich

in verknüpften Bildern. Aktuelle Standards gehen von sRGB als Farbraum aus.

In manchen Standards sind alternative Möglichkeiten zur Angabe von Farben vorgesehen.

In der SVG Spezifikation 98 wurde das Problem der Farbdarstellung erstmals behandelt.

Im Zuge der Modularisierung der W3C-Standards sind wesentliche Elemente aus dieser

Spezifikation in das CSS-3 Color Modul 99 eingeflossen, dem bei künftigen Standards eine

zentrale Bedeutung zukommt.

Farben in aktuellen Recommendations

Bei allen aktuellen Recommendations, in denen die Angabe von Farben möglich ist, können

diese prinzipiell auf mehrere verschiedene Arten angegeben werden.

1. Über Farbnamen (named colors)

Beispiel:

body {color: black; background: white }

h1 { color: maroon }

h2 { color: olive }

Eine Liste möglicher Farbnamen findet sich unter 100 .

2. Angaben von RGB Farbwerten

kann man auf drei unterschiedliche Arten machen. Eine Überschreitung des vorgesehenen

Wertebereichs wird auf den entsprechenden Minimal, bzw. Maximalwert

geklippt. Die Beispiele sind in CSS Syntax angegeben.

a) Angabe von drei oder sechs hexadezimalen Werten: [0-9, A-F] je Farbkanal

Ermöglicht die Angabe der Werte äquivalent zu Integer Werten [0-255] für

jeden Farbkanal

Beispiel:

p { color: #f00 } /* #rgb wird interpretiert wie #rrggbb*/

p { color: #ff0000 } /* #rrggbb */

98 Scalable Vector Graphics (SVG) 1.1 Recommendation, Januar 2003 :

http://www.w3.org/TR/2003/REC-SVG11-20030114/

99 W3C CSS-3 Color Module, Canaidate Recommendation vom Mai 2003 :

http://www.w3.org/TR/2003/CR-css3-color-20030514

100 Farbnamen und ihre numerischen Werte :

http://www.mediaevent.de/tutorial/farbcodes.html

63


1.5. WEBSTANDARDS 64

b) Angabe von integer Zahlenwerten: 0-255 je RGB Farbkanal

Beispiel:

p { color: rgb(255,0,0) }

p { color: rgb(300,0,0) } /* clipped to rgb(255,0,0) */

p { color: rgb(255,-10,0) } /* clipped to rgb(255,0,0) */

3. Angabe von prozentualen RGB Werten: [0-100%] je Farbkanal

p { color: rgb(100%, 0%, 0%) }

p { color: rgb(110%, 0%, 0%) } /* clipped to rgb(100%,0%,0%) */

Alle genannten Farbangaben sind als sRGB-Farbwerte zu verstehen und sollen vom Webbrowser

auch als solche interpretiert werden.

Künftige Standards sehen weitere Mögichkeiten zur Angabe von Farbwerten vor, sie werden

im folgenden Abschnitt besprochen.

CSS-3 Color Module

Zur modularisierten CSS-3 Spezifikation gehört das CSS-3 Color Module. 101 In diesm

Modul werden alle mit farbiger Darstellung zuammenhängenden Stile definiert. Jede

Implementierung von CSS-3-Farben muss spezifizieren welche Teile des Color Modules

unterstützt werden. Das geschieht durch Profiles. 102 Für das Color Module sind die

Profiles zum aktuellen Zeitpunkt noch nicht norminativ festgeschrieben. Im folgenden

sollen nicht in früheren CSS-Versionen enthaltene Eigenschaften besprochen werden. Der

Schwerpunkt liegt dabei auf Farbmanagementfunktionen.

Neue Farben und Transparenz

Neben mittlerweile 147 festgelegten Farbnamen gibt es in CSS-3 ein Schlüsselwort für

Transparenz: »color: transparent;« und die Möglichkeit die Transparenz (opacity) eines

Objekts bei Farbangaben mit anzugeben. Transparenz wird durch eine vierte Zahl angegeben,

die den normalen Farbangaben angehängt werden kann. Die vierstelligen RGBA

und HSLA Farbangaben sind also keine CMYK-Farbangaben, wie es auf den ersten Blick

erscheinen mag. Der letzte Wert ist die Alpha-Angabe und kann numerische Werte zwischen

0 und 1 oder 0% und 100% annehmen. Voreinstellung ist 100% also keine Transparenz,

bei 0% ist nichts mehr von der angegebenen Farbe zu sehen.

Die ursprüngliche Bestimmung des RGB-Farbraums lag in der in der Ansteuerung von

CRT-Röhrenmonitoren durch die Grafikkarte. Die Verwendung von RGB Farbwerten ist

nicht intuitiv, deshalb sieht im CSS-3 Standard die Möglichkeit vorgesehen, die Farben

nach Farbwinkel (Hue), Farbsättigung (Saturation) und Helligkeit (Lightness) anzugeben,

101 W3C CSS-3 Color Module, Canaidate Recommendation vom Mai 2003 :

http://www.w3c.org/TR/2003/CR-css3-color-20030514

102 Profiles von html und CSS beschreiben Teilmengen der Spezifikation. Nicht zu verwechseln mit ICC-

Profilen

64


1.5. WEBSTANDARDS 65

einem HSL-Farbraum.

Will man beispielsweise ähnliche Farben erzeugen geht das mit HSL-Farben erheblich

leichter: Man variiert Helligkeit oder Sättigung und kann den Farbwinkel beibehalten.

Die Farbwerte:

Rot: 0, 360 ◦ Grün: 120 ◦ Blau: 240 ◦

Helligkeit: 0-100%

Sättigung: 0-100%

Bei den HSL-Farbangaben handelt es sich um eine

andere Schreibweise für RGB Farbwerte. Wenn

dem Dokument also kein anderes Farbprofil zugeordnet

wurde also um sRGB Werte. Wie man die

Farbwerte ineinander umrechnent, ist im Standard

festgelegt. 103 .

Eine weitere Neuerung betrifft die bisher kaum

implementierten CSS-2 system colors. Sie sollten

es dem Webdesigner ermöglichen die im Betriebssystem

festgelegten Desktop-Farben auch in Webanwendungen

zu verwenden. In CSS-3 gelten sie

als unerwünscht (depreciated). Statt dessen wurden

neue Farbschlüsselwörter festgelegt, die vom

Browser mit Systemfarben versorgt werden können.

Diese übernehmen die Farbeinstellungen aus

dem Betriebssystem von Elementen, wie Menü,

Scrollbar, markierter Text etc.

104

Abbildung 1.17.: HSL - steht für

Hue, Saturation und Lightness

Das Color-Profile Tag und die @color-profile Regel

Bei Ausgabemedien des Typs visual können im CSS-3 Standard erstmals Farbprofile

zur Definition von Farben und die Verknüpfung mit Bildern verwendet werden. Leider

unterstützt derzeit noch kein Webbrowser diese Funktionen.

Mögliche Attribute von color-profile:

auto | sRGB | | | inherit

Ein Farbprofil kann mit allen Elementen verlinkt werden, ist keines angegeben, so ist

die Voreinstellung auto: Es werden in Bildern eingebettete Farbprofile ausgewertet. Wird

dagegen sRGB angegeben, werden alle eingebetteten Farbprofile ignoriert und stattdessen

der sRGB-Farbraum angenommen.

103 Umrechnung von HSL in RGB Farbwerte. W3C Color-Module Candidate Recommendation, Dezember

2004 :

http://www.w3.org/TR/css3-color/index.html#hsl-examples

104 Farbnamen für Systemfarben, W3C Color-Module Candidate Recommendation, Dezember 2004 :

http://www.w3.org/TR/css3-color/index.html#css-system

65


1.5. WEBSTANDARDS 66

Der Wert name wird weiter unten im Zusammenhang mit der @color-profile-Regel besprochen.

Mit dem CSS-üblichen Schlüsselwort inherit wird in der Dokumentstruktur nach einer

profile-Anweisung in übergeordneten Ebenen gesucht und diese vererbt.

Die Hierarchie bei der Verwendung von Farbrofilen ist wie bei CSS üblich, durch das

Prinzip der Vererbung festgelegt. Es gilt das der Farbanweisung nächstliegende Element.

Mit der Ausnahme: In Bilder eingebettete Farbprofile können durch explizite Angabe

eines Farbprofils im Image-Tag überschrieben werden. Dann gilt das in der URI angegebene

Profil, das eingebettete wird ignoriert, auch wenn es dem Bild eigentlich näher

liegt.

/*

Allen Bildern, die über ein img-Tag eingebunden sind, wird

das AdobeRGB Farbprofil von der angegebenen Serveradresse

zugewiesen

*/

img { color-profile: url("http://example.com/profiles/AdobeRGB.icm") }

Zu dem verlinkten Farbprofil kann ein rendering-intent angegeben werden. Mögliche Werte

sind:

auto|perceptual|relative-colorimetric|saturation|absolute-colorimetric|inherit

Es gelten die vom ICC Definitionen

105 für die Rendering intents. Der Attributwert

auto ist die Voreinstellung. Bei Bildern mit eingebettetem Farbprofil wird der Rendering

Intent, der im Farbprofil angegeben ist verwendet.

Ein Farbprofil und alle dazugehörigen Angaben können an zentraler Stelle in der CSS-

Datei definiert werden. Diese Angaben werden mit einem Bezeichner »« versehen

und können an anderen Stellen referenziert werden. Dazu wird die @color-profile Regel

verwendet. Es gilt folgende Syntax:

@color-profile {

descriptor: value;

...

descriptor: value;

}

105 Es gelten die vom ICC Definitionen der ICC Profile Format Spezifikation, Version 3.2. 1995 für die

Rendering Intents im CSS-3 Color Module :

http://www.color.org/icc32.pdf

66


1.5. WEBSTANDARDS 67

Die Descriptoren:

• name

kann und sollte frei vergeben werden. Ist kein Name angegeben, so gilt sRGB per

Voreinstellung.

• src

Mögliche Werte sind:

sRGB | | | ( )

• sRGB ist die Voreinstellung. Verwendet man sRGB, kann man sich den @color-

Aufwand auch ersparen.

• local("+ + ") ermöglicht die Referenz auf ein clientseitig vorhandenes

Farbprofil. Das macht natürlich nur Sinn, wenn man davon ausgehen kann, dass

auf Client-Seite auch ein entsprechendes Farbprofil zur Verfügung steht.

• referneziert ein auf einem Server bereitgestelltes Farbprofil.

• ( ) ist eine sinnvolle Kombination. Nur, wenn das lokale Profil

nicht vorhanden ist, wird die URI-Referenz geladen.

• rendering-intent erlaubt die explizite Angabe eines ICC Rendering-Intents (s.o.).

/* Die @ color-profile Regel in der Anwendung*/

@color-profile {

name: myProfile;

src: (local(Adobe RGB) http://www.myserver.org/AdobeRGB.icc);

rendering-intent: perceptual;

}

img { color-profile: myProfile;}

Der Einsatz von color-profile und @color-profile ist für die Lösung komplexer Farbprobleme

geeignet. Durch die Referenz von Farbprofilen kann man gerade bei speicherintensiven

LUT-Profilen Übertragungskapazität einsparen, da der Browsercache dafür sorgt, dass

ein einmal verlinktes Profil nicht erneut vom Server geladen werden muss. Bei in Bildern

eingebetteten Farbprofilen müssen die Daten mit jedem Bild erneut übertragen werden.

Man kann also Bilder in einem beliebigen Farbraum ohne Farbprofil speichern und per

CSS-Link mit einem Profil verknüpfen.

Weitere Anwendungsszenarien wären Denkbar. Bei bekanntem Bild-Farbraum und Verwendung

eines geeigneten abstract-Profils wären per JavaScript interaktive Softproof

Anwendungen denkbar (->2.3.3).

67


1.5. WEBSTANDARDS 68

1.5.5. Anforderungen an künftige Webbrowser

Berücksichtigt man die im CSS-3 Color Modul vorgeschlagenen Möglichkeiten für die

Verwendung von ICC-Farbprofilen ist es notwendig Webbrowser, mit CMM Funktionnalitäten

auszustatten.

Die Farbverarbeitung lässt sich laut W3C auf eine Gamma-Anpassung reduzieren. Ist

dies gewünscht, so ist eine Gammakorrektur nötig, die zusammen mit dem Geräteeigenen

Gamma des Ausgabegeräts ein Gamma von 2,2 ergibt. Denn es wird ein idealer

CRT-Bildschirm angenommen, wie in der Spezifikation des sRGB (-> 1.3.4) Farbraums

beschrieben. Gammaverschiebungen, die durch Dithering entstehen werden dabei ignoriert.

106

Webbrowser, die im CSS-3-Color-Modul (-> 1.5.3) beschriebene Profile-Tags unterstützen

sollen, müssen auf eine geeignete ICC-kompatible Infrastruktur zugreifen können um

die Anforderungen richtig umzusetzen.

Wie ein Webbrowser diese Anforderungen umsetzt bleibt zunächst offen. Damit ein

Webbrowser-Entwickler das Colormanagement nicht selber implementieren muss, kann

er die vom Betriebssystem bereitgestellte Infrastruktur nutzen.

Die Aussicht auf farbrichtig arbeitende Browser ist also stark abhängig von den CMS Implementierungen

der Betriebssystem-Entwickler. Bei Windows und Macintosh Betriebssystemen

ist die Infrastruktur vorhanden, Unix-Surfer werden vermutlich noch länger

auf eine farbfähigen Browser warten müssen. Denkbar wäre aber ein Farbmanagement

auf Anwendungsebene, bei dem der Surfer in den Einstellungen des Browsers ein Bildschirmfarbprofil

auswählt. Farbraumtransformationen ließen sich dann durch Integration

der LCMS-API realisieren.

106 W3C Color Module über den Umgang mit verschiedenen Gammawerten unterschiedlicher Systeme :

http://www.w3.org/TR/css3-color/#gamma

68


2. Praktisches Farbmanagement für den

Webserver

Im praktischen Teil dieser Arbeit soll aufgezeigt werden, wie sich farbrelevante Bildverarbeitung

auf Webservern durch den Einsatz freier Software implementieren lässt.

2.1. Server- und Clientseitige

Bildverarbeitung

Will ein Webdesigner Webseiten erstellen, sollte er seine Bilder im Internet-Standard-

Farbraum sRGB veröffentlichen. Erstellt er einzelne Webseiten, bieten die meisten Bildbearbeitungsprogramme

Möglichkeiten Bilder internetkonform zu speichern. Dabei wird

das Bild in den sRGB Farbraum gewandelt und ohne Farbprofil als jpeg-, gif- oder png-

Grafik abgespeichert. Einfache Bildbearbeitungsprogramme erlauben manchmal keinen

anderen Farbraum als sRGB.

Hat er eine größere Menge Bilder zu verarbeiten bieten sich Automatisierungsfunktionen,

wie die Photoshop-Aktionen an, die es erlauben eine einmal aufgenommenes

Macro auf andere Dateien oder ganze Ordner anzuwenden oder als Droplett zu speichern.

Ein Droplett ist ein ausführbares Programm, zieht man einen Ordner mit Bildern

darauf startet Photoshop und führt die im Macro gespeicherten Aktionen automatisch

aus.

Oft sind Webdesigner nicht für die Erstellung der Inhalte zuständig, sondern realisieren

Internetauftritte in Zusammenarbeit mit Redakteuren.

Es entspricht nicht der gängigen Praxis in Unternehmen, dass ein Webdesigner einen kompletten

Internetauftritt erstellt. Vielmehr bietet er mit einer auf dem Webserver installiertem

Content Management System verschiedenen Redakteuren die Möglichkeit Inhalte zu

veröffentlichen. Ein Webinterface mit WYSIWYG-Editor ermöglicht es dem Redakteur

die Inhalte online zu erstellen und zu verändern. Oft sind die Redakteure auch für die

Beschaffung von Bildmaterial zuständig. Doch die Vorbereitung der Bilder für einen Webauftritt

bedarf einer geeigneten Software und Übung in deren Anwendung. Schließlich

kostet es Zeit diese Aufgaben zu erledigen. Je mehr Redakteure an einem Webauftritt beteiligt

sind desto schneller steigen die damit verbundenen Kosten.

69


2.1. SERVER- UND CLIENTSEITIGE BILDVERARBEITUNG 70

2.1.1. Workflow im Internet

Wie sich die serverseitige Bildverarbeitung in einen Produktionsprozess integrieren lässt

soll anhand eines Beispiels erörtert werden: Die hypothetische Zeitschrift »Der Blumenzüchter«

erscheint alle zwei Wochen und verfügt über zwei feste Redakteure in München,

die vorwiegend mit Kleinst-Artikeln und dem Anzeigengeschäft beschäftigt sind und das

Gros der Artikel, inklusive Bildern, von freien Mitarbeitern aus dem gesamten Bundesgebiet

einkaufen. Das Layout erstellt ein Grafiker aus Hamburg.

Die Redaktion hat sich auf einem Webserver ein Content Management System einrichten

lassen, Redakteure und freie Mitarbeiter können sich von jedem Internetzugang aus

einloggen, Artikel einstellen und überarbeiten. Besprechungen mit der Redaktion finden

telefonisch statt, sobald ein Freier Mitarbeiter einen Artikel fertig hat, kann der Redakteur

ihn lesen und Korrekturwünsche anbringen.

Die Bilder der Freien werden in hoher

Druckauflösung hochgeladen. Eine

Kopie des Originals mit dem Artikel

verknüpft. Alle Bilder automatisch

in den Arbeitsfarbraum der Redaktion

gewandelt. Ein Softproof des

Druckfarbraums wird in der Online-

Version des Artikels angezeigt, so dass

alle Beteiligten beurteilen können, wie

das Bild in der Zeitung erscheinen wird.

Ein Beschneidungsrahmen

1 ermöglicht

die Anpassung des Bildausschnitts.

Ist der Redakteur mit einem Artikel

zufrieden, ordnet er ihm eine Rubrik

zu und gibt ihn per Mausklick zur Veröffentlichung

frei.

Abbildung 2.1.: Bei Gallery kann man Bilder

im Webbrowser mit Hilfe eines Java Applets

beschneiden

Der Grafiker erhält per automatisiertem

XML-Export alle Artikel entsprechend

dem Aufbau der Zeitschrift geordnet.

Die Bilder kommen in Originalversion

versehen mit den Daten des online vorgenommenen Bildausschnitts. Die XML-

Daten und Layoutvorlage des Blumenfreunds werden in der Layoutsoftware verknüpft.

Die Aufgabe des Grafikers ist es die Bilder zu prüfen, ggf. zu bearbeiten und das Layout

visuell zu gestalten. Eine Druckfertige PDF-Ausgabe der Zeitschrift kann er ebenfalls per

Telefon mit der Redaktion besprechen.

Die Webseite der Blumenzüchter lässt sich aus dem System ebenfalls mit Inhalten versorgen.

Die Redaktion kann per Klick entscheiden, ob ein Artikel ganz oder teilweise

auf den Webseiten veröffentlicht werden soll. Natürlich werden die Bilddaten dabei automatisch,

passend beschnitten, scharfgezeichnet und in den sRGB-Farbraum transformiert.

1 Bildbeschnitt lässt sich mit Java-Applets direkt im Webbrowser vornehmen. Realisiert in der Online-

Bildergalerie Gallery2 :

http://gallery.menalto.com

70


2.1. SERVER- UND CLIENTSEITIGE BILDVERARBEITUNG 71

In diesem Beispiel brauchen nicht alle Mitarbeiter ein funktionierendes Farbmanagement

nur bei Redaktion und Grafik sollten reproduzierbare Bedingungen herrschen. Freie Mitarbeiter

können Bilder bei entsprechenden Kenntnissen nach Ihren Vorstellungen vorbereiten

oder unbearbeitet von der Digitalkamera hochladen.

Als zweites Beispiel für serverseitige Bildverarbeitung möchte ich die Open-Source Webanwendung

Gallery2 anführen. Eine Bildgalerie für den Webserver, bei der Bilder in verschiedensten

Bildformaten und Auflösungen über ein Webinterface auf den Server lädt.

Anschließend können die Bilder in Alben angeordnet, IPTC Daten angezeigt, Bildausschnitte

angepasst, Anzeige- und Bearbeitungsrechte für Benutzer und Gruppen vergeben

werden. Es lässt sich festlegen in welcher Auflösung nicht angemeldete Benutzer die Bilder

anzeigen dürfen und ob ein Wasserzeichen eingebettet werden soll. Das Plug-in-Konzept

von Gallery ermöglicht noch viele weitere Funktionen, wie die Anbindung eines Shopping-

Charts oder den Versand zu einem Online-Belichtungs-Dienstleister.

2.1.2. Serverseitige Bildverarbeitung

Internetserver gibt es mit einen unüberschaubaren Anzahl unterschiedlicher Hard- und

Softwareausstattungen. Neben den häufig anzutreffenden Unix- und Linuxsystemen buhlen

auch Apple und Microsoft um die Gunst der Webadministratoren. Eine sehr verbreitete

und kostengünstige Kombination besteht aus einem Linux-Betriebssystem mit einem

Apache Webserver. Die meisten im folgenden besprochenen Programme laufen ebenfalls

auf Apple- und teilweise auch auf Microsoft- Systemen.

Auf Internetservern sind keine grafischen Oberflächen installiert, serverseitige Bildverarbeitung

hat also nichts mit Mausschieben und Pinselchen anklicken zu tun sondern

mit automatisierter Bildbearbeitung im Rahmen von Webanwendungen. Diese können

in Server-Programmiersprachen, wie Perl oder PHP geschrieben sein. Bedingt durch das

http-Protokoll kann die Bildbearbeitung nicht in Echtzeit stattfinden.

Besondere Beachtung muss bei der Bildverarbeitung den Systemressourcen zukommen.

Bildverarbeitung ist mit rechenintensiven Arbeitsschritten verbunden, besonders, wenn

die Auflösungen und Bildgrößen über im Internet übliche Maß hinausgehen. Es sollten

Maßnahmen ergriffen werden, dass Bildverarbeitungsprogramme nicht zu große Teile des

Arbeitsspeicher oder der Rechenzeit in Anspruch nehmen können, da der Webserver

jederzeit verfügbar bleiben sollte.

Für die Installation von Programmen auf dem Webserver ist meist ein voller System-

Zugriff (root-Rechte) auf den Webserver nötig.

71


2.2. OPENSOURCE SOFTWARE 72

2.2. OpenSource Software

In der Frühzeit der Computertechnik war die Software eine Zugabe zu großen Computeranlagen.

Die in Assemblersprachen geschriebenen Programme liefen nur auf der dafür

vorgesehenen Hardware. Die wirtschaftlichen Vorraussetzungen für das Verheimlichen der

Quelltexte von Softwareprogrammen entstand erst, als Computer für kleinere Unternehmen

und schließlich auch für den Einzelnen erschwinglich wurden. Erst höhere Programmiersprachen

und damit die Trennung von Betriebssystem und Anwendung ermöglichen

die gleiche Software auf unterschiedlicher Hardware einzusetzen.

Open Source Software (OSS) ist ein durch ein die Open Source Initiative (OSI) mit einem

Certification Mark 2 geschützter Begriff. Um ein Produkt als Open Source Software zu

bezeichnen muss eine Software folgende Bedingungen erfüllen:

• Der Quelltext der Software steht der Öffentlichkeit zu Einsicht zur Verfügung

• Die Software darf beliebig verbreitet, kopiert und benutzt werden

• Die Software darf verändert und in veränderter Form weitergegeben werden

Im Kontrast zur 1998 gegründeten OSI steht die ungleich ältere Idee der freien Software.

Das 1984 von Richard Stallmann gegründete GNU-Projekt

3 und die von ihm

entwickelte General Public License (GPL) sieht freie Software als ein gemeinnütziges

Projekt an. Die GPL bedient sich dabei eines juristischen Kunstgriffes des Copylefts:

Der erlaubt Modifizierungen der Software nur, wenn diese auch wiederum unter der

GNU Lizenz veröffentlicht werden. Das soll verhindern, dass freie Software nach einer

Weiterentwicklung privatisiert werden kann. Seit 1991 gibt es ein vollständiges, freies Betriebssystem

das GNU/Linux mit weltweit schätzungsweise 30 Millionen Installationen.

4

Die Voraussetzung für die Entwicklung von OSS ist das Internet. Über Webseiten, per

Mailinglisten oder über den Internet Relay Chat können Programmierer und Anwender

sich Austauschen, Software anbieten und diskutieren. Die Quelloffenheit bietet den Vorteil,

dass Fehler in der Software selten unentdeckt bleiben. 5 Viele Open Source Projekte

konnten dadurch eine überdurchschnittliche Stabilität erlangen. Hersteller proprietärer

Software dagegen tendieren dazu Fehler in ihren Produkten zu verheimlichen, schließlich

müssen Sie ihre Software ja verkaufen.

Open Source kann also als eine effiziente Methode zur Entwicklung von Software angesehen

werden, während bei dem Begriff freier Software die ideologische Idee frei Zugängli-

2 Warenzeichen, das es erlaubt Produkte andere zu zertifizieren

3 GNU-Projekt Website :

http://gnu.org

4 Volker Grassmuck, Freie Software - Zwischen Privat und Gemeineigentum, Bundeszentrale für Politische

Bildung, 2.Auflage, Bonn 2004, S. 229 :

http://freie-software.bpb.de/Grassmuck.pdf

5 Eine Programmierer Faustregel besagt, dass auf 100 Zeilen Quellcode ein Fehler angenommen werden

kann

72


2.2. OPENSOURCE SOFTWARE 73

chen Wissens zugrunde liegt.

2.2.1. Lizenzen

Eine Lizenz regelt die vertraglichen Rechte und Pflichten des Lizenznehmers gegenüber

dem Lizenzgeber, dem Inhaber des Urheberrechts. Diesem steht es frei bei Veröffentlichung

seiner Arbeit Bedingungen für die Nutzung festzulegen. Es haben sich in den letzten

Jahren eine ganze Reihe verschiedenartiger OSS-Lizenzen entwickelt, deren Gemeinsamkeiten

bereits erwähnt wurden. Die wesentlichen Unterschiede sollen an diese Stelle

kurz beschrieben werden. Ebenso wie kommerzielle Lizenzen schließen die Lizenzbedingungen

jegliche Haftung und Gewährleistung für die Produkte aus.

Public Domain-Software

ist lizenzlose Software, sie ist nicht Copyright geschützt. Software oder Quellcode sind gemeinfrei,

was jegliche Nutzung bis hin zu Beantragung eines Copyrights möglich macht.

BSD

Die Lizenz der Berkeley Software Distribution erlaubt die Weiterverbreitung und Veränderung

von Quelltext und binärer Software, wenn Copyrightvermerk und Lizenztext mit

verbreitet werden und in Werbematerialien eine Hinweis auf die Beteiligung der Barkley

Universität dem entstehen der Software gegeben wird. Das die abgeleitete Software im

Quellcode veröffentlicht werden muss schreibt die Lizenz nicht vor. Ab 1999 fällt auch

die Pflicht für einen Hinweis in den Werbematerialien, da sich mit zunehmender Verbreitung

der Lizenz bei komplexeren Softwareprodukten die Anzahl der in die Werbung

einzufügenden Sätze nicht mehr tragbar war.

GPL

Die General Public License hat zum Ziel jegliche Weitentwicklungen GPL-lizenzierter

Software unbedingt wieder der freien Softwaregemeinde zukommen zu lassen. Der Entwickler

ist verpflichtet sein Produkt unter die gleiche Lizenz zu stellen, will er GPL

Software in sein Projekt einbauen. Die unterschiedlichen Interpretationen des Freiheitsbegriffes

treten hier zu Tage: Für Vertreter ökonomischen Sichtweise ist Software frei,

wenn man alles mit ihr machen kann, beispielsweise ein abgeleitetes Softwareprodukt

teuer verkaufen. Die GNU-Gemeinde sieht im Recht freie Arbeiten Anderer zu verwenden,

auch die Verpflichtung zu freien Arbeiten beizutragen, die Software ist Frei - nicht

nur kostenlos.

LGPL

Die Benutzung von GPL-Software ist für kommerzielle Anbieter, die innovative Software

entwickeln wollen ökonomisch unvertretbar. Die Leser- oder Library-GPL soll ihnen ermöglichen

freie Bibliotheken in ihre Produkte einzubauen, ohne dadurch gezwungen zu

werden ihre gesamten Quelltexte offen zu legen. Erklärtes Ziel der LGPL ist es die Verbreitung,

Akzeptanz und Weiterentwicklung freier Software fördern.

73


2.2. OPENSOURCE SOFTWARE 74

MPL

Die Mozilla Public License

6 wurde 1998 von der Firma Netscape herausgegeben. Sie

gilt als ein Kompromiss zwischen den beiden Extremen GNU und BSD. Veränderungen

am Quelltext eine MPL-Lizensierten Software müssen dieselbe Lizenz erhalten, jedoch

ist es möglich MPL-Quellcode mit proprietärem Quellcode zu verbinden und unter restriktiveren

Bedingungen zu verbreiten. Die MPL ist ausdrücklich inkompatibel mit der

GPL.

Es gibt noch eine große Menge weiterer Open Source Lizenzen, die den vorher genannten

oft ähnlich sind. Einen Überblick über verschiedene Open Source Lizenzen bietet die

Seite der Ifos. 7

2.2.2. Verwendung von OSS

Die Verwendung von Open Source Software erfordert eine andere Arbeitsweise als die

Verwendung gekaufter Software.

Kommerzielle Softwareanbieter bieten meist ein fertig geschnürtes, ausführlich getestetes

Paket und ein Supportangebot, falls etwas nicht funktionieren sollte. Das Marketing

versucht das Produkt möglichst vielen bekannt zu machen und die Funktionalität

leicht verständlich darzustellen. Ein wichtiges Entscheidungskriterium ist die

Qualität der Software und des gebotenen Supports: Werden Anfragen schnell und zuverlässig

beantwortet? Gibt es ein leicht verständliches Handbuch oder eine Online-

Hilfsangebot?

Bei Open Source Software steht meist kein organisiertes Unternehmen hinter dem Produkt.

Das Marketing besteht aus mehr oder minder informativen Webseiten, Zeitschriftenartikeln

und Beiträgen in Diskussionsforen. Auch gibt es keinen kostenlosen Support,

der sich freundlichst mit jeder Frage auseinandersetzt, die in der Dokumentation auf Seite

1 mit drei Ausrufezeichen steht. Für manche Software gibt es kostenpflichtigen Support

von den Entwicklern oder anderen Firmen.

Im Normalfall muss sich der Anwender aber selber informieren. Alle angebotenen Hilfsdokumente

und Manpages lesen und in Webforen und FAQ nach Lösungen suchen. Kommt

man mit den gebotenen Informationen nicht mehr weiter kann man sich mit seiner Frage

an projekbezogene Maillinglisten oder ein Webforen wenden. Fast immer werden qualifizierte

Fragen schnell und gut beantwortet. Man kann davon ausgehen, dass sich die

Entwickler darüber freuen, wenn Anwender auf Probleme oder Fehler in der Anwendung

stoßen und sie diskutieren wollen.

6 Mozilla Public License (MPL) :

http://www.mozilla.org/MPL/MPL-1.1.html

7 Das IFOS Lizenz-Center bietet einen Überblick über verschiedene Open Source Lizenzen, Dez. 2005 :

http://www.ifross.de/ifross_html/lizenzcenter.html

74


2.2. OPENSOURCE SOFTWARE 75

Für den Webentwickler der seiner Webanwendung Farbmanagementfunktionen mit OSS

hinzufügen will ergeben sich folgende Aufgaben:

1. Recherche nach einer geeigneten Software und der notwendigen Dokumentation

2. Untersuchung und Eignungstest der Software:

Welche Vorraussetzungen sind für die Installation notwendig?

Sind sie auf dem Webserver gegeben? Können die Lizenzbestimmungen eingehalten

werden?

Eignet sich die Software tatsächlich für die gewünschte Funktionalität?

Welche Kommandos sind für die Anwendung der Software nötig?

3. Installation der Software auf dem Server

4. Implementierung in die gewünschte Webanwendung

5. Testen der Implementierung

Die folgende Untersuchung von farbverarbeitender Bildverarbeitungssoftware soll den

Webentwickler bei den Problemen der Recherche, des Testens und der Installation unterstützen

und Beispiele für Möglichkeiten der Implementierung geben.

2.2.3. Kosten

Für die im folgenden betrachteten Programme fallen keine Lizenzgebühren für die Software

oder regelmäßige Updates an, sie sind deshalb aber nicht gänzlich kostenlos.

Im Idealfall wird vor der Einführung neuer Software wird eine Kostenanalyse erstellt,

die alle direkten und indirekten Kosten berücksichtigen sollte. Direkte Kosten sind alle

budgetierbaren Kosten (Hardware, Software, Administration, Anwenderschulung), zu

indirekten Kosten zählt man solche, die schwer budgetierbar und vorhersehbar sind. Insbesondere

sind das Arbeitszeiten, die Anwender mit der Software verbringen (gegenseitige

Hilfe bei Problemen, Supportanfragen, autodidaktisches Lernen durch Handbücher und

Online-Hilfe, Dateiverwaltung) und Arbeitszeitverlust durch Ausfallzeiten (downtime).

8

Bei der Verwendung von OSS fallen manche Kosten weg und andere stärker ins Gewicht,

sie müssen für jedes Softwareprojekt individuell ermittelt werden.

• Kosten für Lizenzen und regelmäßige Updates fallen weg. Bei kommerzieller Software

ist alle 3-5 Jahre ein kostenpflichtiges Update notwendig, weil der Support für

die alte Version ausläuft.

8 Gartner, Chart of Accounts, E-Rev. n Revised 16 June 2003 :

http://www.gartner.com/4_decision_tools/modeling_tools/costcat.pdf

75


2.2. OPENSOURCE SOFTWARE 76

• Installation, Anpassung, Implementierung sind tendenziell aufwändiger, da die Qualität

der Dokumentation freier Software manchmal zu wünschen übrig lässt. Dafür

lassen sich Anwendungen individueller anpassen, was schließlich der Benutzerfreundlichkeit

zugute kommt.

2.2.4. Open Source Programme zur Bildbearbeitung

Für eine in Webanwendungen integrierte Bildverarbeitung auf dem Webserver bietet

sich die Verwendung von Open Source Software an. Webanwendungen werden meist

individuell erstellt oder angepasst. Webentwickler können ihre favorisierte Scriptsprache

verwenden, um Anwendungen Farbmanagement-Funktionen hinzuzufügen. Die Auswahl

versucht, gängige und besonders für die Arbeit mit Farbprofilen geeignete Software zu

berücksichtigen, erhebt aber keinen Anspruch auf Vollständigkeit.

Mit der Ausnahme von ImageMagick ist bei den hier besprochenen Programmen keine

grafische Schnittstelle vorhanden. Die Ausführung erfolgt zu Testzwecken oder für die

Stapelverarbeitung über die Kommandozeile. Sollen Funktionen in Webanwendungen

verfügbar sein, bieten alle serverseitigen Scriptsprachen die Möglichkeit, Kommandozeilenaufrufe

vorzunehmen.

Durch Scriptprogrammierung schwer lösbare Probleme ergeben sich bei Bildern, die kein

Farbprofil eingebettet haben. Da jede Farbraumtransformation neben dem Zielprofil unbedingt

Informationen über den Quellfarbraum benötigt, gehen die Programme bei profillosen

Bildern davon aus, sRGB-Daten vorliegen zu haben.

NetPBM

Ist eine Sammlung verschiedener Bildbearbeitungstools und eine Bibliothek für alle gängigen

Betriebssysteme. Die ca. 220 primitiven Programme und Konverter wurden zusammengestellt,

um Programmierern eine einheitliche Quelle für verschiedenste Bildbearbeitungsfunktionen

zu bieten.

9

NET PBM steht unter GNU Lizenz. Colormanagementfunktionen sind nicht vorhanden:

man verwendet ein sRGB-kompatibles Gamma von 2,2. NetPBM ist die Grundlage von

GD und ImageMagick.

10 11

9 Website von NET-PBM :

http://netpbm.sourceforge.net

10 NET PBM Projektseite :

http://netpbm.sourceforge.net/

11 Net PBM Readme :

http://netpbm.sourceforge.net/README

76


2.2. OPENSOURCE SOFTWARE 77

PHP GD

»GD« steht für Graphics Draw (früher Gif Draw) und ist eine Open Source Library für

die dynamische Erstellung von Grafiken. Es bietet zahlreiche Bildbearbeitungsfunktionen

und ist auf den meisten PHP-fähigen Webservern zu finden. Alle Web-Bildformate (jpeg,

gif und png) werden unterstützt, Programmierschnittstellen für gängige Scriptsprachen

(Perl, Ocaml, Tcl, Pascal, REXX und weitere) sind vorhanden, seit Version 4.3.0. ist GD

fester Bestandteil von PHP.

12

Farbmanagementfunktionen sind nicht vorgesehen. Seit Version 2.0.22 gibt es die Möglichkeit,

CMYK-jpegs in RGB umzuwandeln, doch eingebettete Farbprofile werden dabei

ignoriert, die Ergebnisse sind nicht vorhersehbar.

GD bietet auch ein schönes Beispiel über die Verwirrungen des Copyrights. Eine BSDartige

Lizenz mit einer langen Liste, die das Copyright einzelner Programmteile verschiedenen

Inhabern zuordnet, vermischt mit "Credits" an weitere Autoren.

13 14

ImageMagick

Ist eine Zusammenstellung freier Software zum Erstellen und Bearbeiten von Pixelbildern.

ImageMagick 15 läuft auf allen gängigen Betriebssystemen, ist für gängige Distributionen

als Paket verfügbar und bietet Schittstellen für eine große Anzahl an Programmiersprachen.

16

Das ImageMagick-Projekt verwendet eine GPL-kompatible Lizenz, die nicht zur Veröffentlichung

eigener Weiterentwicklungen zwingt.

Eigentlich wurde ImageMagick zur Verwendung auf X11-Desktop entwickelt, doch alle

Funktionen die nicht der Anzeige dienen, lassen sich interaktiv über die Kommandozeile

steuern. Eine hervorragende Dokumentation und eine große Anwenderzahl macht

ImageMagick neben GD zur gebräuchlichsten Anwendung für serverseitige Bildbearbeitung.

Besonders interessant für Farbmanagementinteressierte ist die Nutzung von ImageMagick

mit dem LCMS-Library. Sollen farbrichtige Formatumwandlungen wie das folgende

Beispiel ausgeführt werden, muss sich der Programmierer erst versichern, dass die installierte

Version von ImageMagick auch mit LCMS zusammenarbeitet. Wie das geht ist im

12 Website von GD :

http://www.boutell.com/gd/

13 PHP-GD Dokumentation :

http://de3.php.net/gd

14 PHP-GD-Website :

http://www.boutell.com/gd/

15 Webseite von ImageMagick :

http://www.imagemagick.org

16 Perl - PerlMagick, C++ - Magick++ und ChMagick, Python - PythonMagick, Ruby - Rmagick, PHP

- MagickWand for PHP , Java - Jmagick, C - ChMagick

77


2.2. OPENSOURCE SOFTWARE 78

Anhang unter A.1.1 beschrieben.

Ein Beispiel:

Konvertiertierung eines CMYK-jpeg mit eingebettetem Farbprofil mit wahrnehmungsorientiertem

Rendering-Intent in ein profilloses sRGB-jpeg für das Internet:

convert -profile sRGB.icm

cmyk.jpeg RGB.jpeg && mogrify -strip RGB.jpeg

Erklärung:

Zunächst wird das CMYK-jpeg mit convert in ein neues sRGB-jpeg umgewandelt. Convert

erstellt immer neue Bilder.

convert

[options]

Das "&&ïst ein Unix-Shell-Befehl und sorgt für einen zweiten Programmaufruf. Der Befehl

mogrify bearbeitet immer ein vorhandenes Bild und überschreibt dieses.

mogrify [options]

Lässt man die -profil Optionen weg, wird kein Colormanagement ausgeführt. Die Grauachse

bleibt nicht erhalten und Grau wird zu Grün.

Weitere Informationen über ImageMagick’s Farbmanagementfunktionen und die Zusammenarbeit

von ImageMagick und LCMS finden sich im Anhang unter A.1.1.

LCMS

Das "Little Color Management System" (LCMS) 17 ist eine Bibliothek, die ein Anwendungsprogrammierer

mit verschiedenen Programmiersprachen verwenden kann. 18 Auf

Webservern kann LCMS über die Kommandozeile verwendet werden.

LCMS steht seit Version 1.12 unter einer der BSD ähnlichen Lizenz ( MIT 19 ), kann also

auch in Closed-Source Anwendungen verwendet werden.

Wenn die Quell-Bilder keine eingebetteten Profile mitbringen, nimmt LCMS an, dass es

sich um sRGB-Bilddaten handelt, was zu falschen Ergebnissen führt.

LCMS besteht aus fünf Programmen. Den Umgang mit Profilen in Jpeg- und Tiff-

Bildern ermöglichen jpecicc und tifficc. Mit icctrans kann man einzelne Farbwerte

17 Webseite vom "Little Color Management System"LCMS :

http://www.littlecms.com

18 Delphi, C++ Builder, Visual C++, Tcl/Tk, Visual Basic

19 MIT Lizenz vom "Massachusetts Institute of Technology":

http://ocw.mit.edu/OcwWeb/Global/license.htm

78


2.2. OPENSOURCE SOFTWARE 79

über ein Profil berechnen (Farbtaschenrechner) und wtpt gibt Informationen über den

Weisspunkt des ICC-Profile preis. Mit dem Programm icclink lassen sich Abstrakte

und Device Link Profile erstellen, icc2ps rechnet Farbprofile ins Postscrip-Format

um.

Anwendungsbeispiele zu LCMS finden sich im Anhang unter A.1.2. Wie man ImageMagick

mit dem LCMS-Library verwendet, um korrekte Farbraumtransformationen vorzunehmen,

steht unter A.1.1.

ArgyllCMS

Das »Argyll Color Management System« befindet sich noch in experimentellem Zustand,

was aber nicht bedeutet, dass alle Programme des Pakets unbrauchbar wären. Ausführlich

getestete Funktionen können auf dem Webserver gute Dienste leisten.

Da der Webprogrammierer die Argyll-Programme nur anwendet, nicht implementiert,

muss er sich auch nicht mit den Nachteilen der GNU-Lizenz auseinander setzen. Die

Entwickler von Argyll machen unmissverständlich klar, dass sie Implementierungen von

Argyll ausschließlich unter der genannten Lizenz erlauben. Der Quelltext einer Weiterentwicklung

muss öffentlich verfügbar gemacht werden.

Mit Argyll kann man Monitore, Scanner und Drucker unter Windows, Mac OSX und

Linux kalibrieren, Device Link Profile erstellen und Farbräume im VRML Format visualisieren.

Im Gegensatz zu manch teurer kommerzieller Profilierungssoftware geht bei

Farbprofilen die mit Argyll erstellt wurden, das Copyright an den, der das Profil erstellt

- es gibt keine Lizenzprobleme bei einer Veröffentlichung der Farbrofile im Internet.

Das Visualisierungstool viewgam 20 ermöglicht die 3D-Darstellung von Farbräumen im

VRML 21 Format, das sich in Webseiten integrieren lässt. Eindrucksvoll dokumentiert

auf http://iccview.de.

Das Tool icclink 22 ist zum Erstellen von DLP und abstrakten Farbprofilen gedacht. Es

bietet mehr Optionen als das gleichnamige Tool aus dem LCMS-Paket.

Das Tool iccdump 23 ermöglicht die Analyse von Profilen. Man kann sich zu einem ICC-

Profil alle oder einzelne Tags im Textformat ausgeben lassen, um sich die trockenen Texte

der ICC-Spezifikation zu veranschaulichen oder die Daten in Webanwendungen weiter zu

verwenden.

20 ArgylCMS viewgam Dokumentation :

http://www.argyllcms.com/doc/viewgam.html

21 VRML97 ist ein internationaler Standard: ISO/IEC 14772-1:1997 :

http://www.web3d.org/x3d/specifications/vrml/ISO-IEC-14772-VRML97

22 ArgylCMS icclink Dokumentation :

http://www.argyllcms.com/doc/icclink.html

23 ArgylCMS iccdump Dokumentation :

http://www.argyllcms.com/doc/iccdump.html

79


2.3. ANWENDUNGSBEISPIELE 80

Informationen über weitere Tools finden sich in der

Anhang unter A.1.3.

Online Dokumentation 24 und im

EXIF Tool

Das Exif Tool ist ein Perl Modul für das Lesen und Schreiben verschiedener Bild-Metadaten.

Es lässt sich auch über die Kommandozeile verwenden und steht unter einer liberalen

Lizenz.

25

Tags folgender Metadaten einer großen Anzahl verschiedener Bild-, Audio- und Videoformate

können ausgelesen werden: EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile,

Photoshop IRB und ID3. Desweiteren sind Kamera-Metadaten verschiedener Digitalkameras.

26

Die ICC-Profildaten können nur ausgelesen, nicht geschrieben werden. Iccdump aus

dem ArgylCMS-Paket liefert die ICC-Profiltags in einer leichter weiterverarbeitbaren

Form.

Das Exiftool bietet sich an, wenn in Webanwendungen wie Bilddatenbanken Metainformationen

verfügbar gemacht werden sollen.

27 Der Vorteil des Exif-Tools liegt in der

großen Anzahl unterstützter Metadatenformate.

2.3. Anwendungsbeispiele

Im Rahmen dieser Diplomarbeit wurden einige Beispiele erstellt, die in diesem Kapitel

vorgestellt werden. Sie laufen auf dem Debian-Linux Webserver des Autors und sind

unter http://colormanagement.digitaldonkey.de erreichbar.

Einige Testseiten sollen die praktischen Probleme bei der Farbdarstellung im www visualisieren,

andere demonstrieren beispielhaft Implementierungen einiger der beschriebenen

freien Softwareprogramme, wie sie sich in Webapplikationen einsetzen lassen.

24 ArgylCMS Online Dokumentation :

http://www.argyllcms.com/doc/ArgyllDoc.html

25 Perl Artistic License :

http://www.perl.com/pub/a/language/misc/Artistic.html

26 Das ExifTool kennt Metadaten von Kameras folgender Hersteller: Canon, Casio, FujiFilm, Kodak, Leaf,

Minolta/Konica-Minolta, Nikon, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Ricoh, Sanyo and

Sigma/Foveon

27 Website zum Perl ExifTool :

http://www.sno.phy.queensu.ca/˜phil/exiftool

80


2.3. ANWENDUNGSBEISPIELE 81

2.3.1. Farbraumtransformation nach sRGB

Liegen Bilddaten in unterschiedlichen Farbräumen vor, bietet es sich an, diese vor der Veröffentlichung

im Internet in den sRGB Farbraum zu konvertieren. Wichtig ist dabei allerdings,

dass die Quelldaten auch ein eingebettetes Farbprofil mitbringen.

Ist die LCMS Bibliothek in ImageMagick verfügbar, (->A.1.1) reicht ein einfaches

convert -profile sRGB.icm

damit verschiedene Bildformate farbrichtig in ein sRGB-Jpeg umgewandelt werden.

Die Beispielanwendung wandelt verschiedene Bilder nach der beschriebenen Methode in

den sRGB Farbraum um. Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/sRGB-konvertierung 28

2.3.2. Safaribrowser

Apples Safari Webbrowser hat zwar Farbmanagementfunktionen implementiert, setzt

jedoch den sRGB Internet-Standard nicht korrekt um: Bilder ohne Farbprofil werden

nicht als sRGB-Daten interpretiert, statt dessen wird der im Betriebssystem eingestellte

Bildschirmfarbraum angenommen.

Die von mir erstellte Seite beinhaltet zwei Bilder, beide identisch im sRGB Format. Mit

dem kleinen Unterschied, dass eines ein Farbprofil eingebettet hat, das andere nicht.

Laut W3C-Standard soll ein Browser, falls kein Farbprofil im Bild vorhanden ist und

keine color-Profile Tags im HTML-Quelltext angegeben werden, die Bilddaten als sRGB-

Farbwerte interpretieren.

Bei Apple wurde dieser Fehler beschrieben und kann unter der Bug Id: 4354445 verfolgt

werden. Alle anderen mir bekannten Webbrowser interessieren sich nicht für eingebettete

Farbprofile, weshalb beide Bilder gleich aussehen.

Eine überraschende Ausnahme bietet Microsofts Internet Explorer 5 für den Mac (IE5):

Surfer, die den Browser verwenden, sehen beide Bilder gleich, obwohl IE5 die Farbprofile

auswertet - der Standard wurde richtig umgesetzt.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/safaritest 29

28 Beispielanwendung: Bildumwandlung nach sRGB :

http://colormanagement.digitaldonkey.de/sRGB-konvertierung

29 Beispielanwendung: Safari browsertest :

http://colormanagement.digitaldonkey.de/safaritest

81


2.3. ANWENDUNGSBEISPIELE 82

2.3.3. Softproof

Wozu dient ein Softproof, wenn der Großteil der Webbrowser nicht einmal das Original

farbrichtig anzeigt?

• Farben lassen sich relativ beurteilen. Stellt man neben ein sRGB-Original Bilder mit

sRGB-Proofs verschiedener Druckprozesse und Druckpapiere, so kann der Kunde

sehen, wie stark der Kontrastverlust auf den einzelnen Medien ausfällt.

• Belässt man die Farbprofile in den Bildern, können Kunden mit dem Safari-Webbrowser

und kalibriertem Bildschirm in den Genuss eines echten Softproofs kommen. Dies

kann für eine geschlossene Nutzergruppe, beispielsweise eine Bildagentur oder Druckerei

sinnvoll sein.

• Schließlich bleibt zu hoffen, dass künftig weitere Webbrowser Farbprofile auswerten

und immer mehr Surfer in den Genuss farbrichtiger Ausgaben kommen.

Ich möchte zwei Möglichkeiten, einen Proof zu erstellen, vorstellen. Serverseitige Proofs

lassen sich beispielsweise mit jpegicc 30 (-> A.1.2) aus dem LCMS-Paket erstellen.

jpegicc -c2 -t0 -q100 -e -o CMYK.icm sRGB.jpeg CMYK.jpeg

&& jpegicc -t3 -c2 -q100 CMYK.jpeg sRGB_softproof.jpeg

Die zweite Softproof-Methode basiert auf der Verwendung von abstrakten Profilen. Diese

sind dazu gedacht, eine Umrechnung von einem Farbraum in den PCS vorzunehmen.

Mit icclink (-> A.1.2) aus dem LCMS-Paket lässt sich ein abstraktes Profil erstellen,

welches eine Transformation vom sRGB Farbraum in den Lab-Farbraum vornimmt und

dabei einen anderen Farbraum (hier: cmyk.icc) prooft.

icclink -t1 -x -o softproof.icc *sRGB cmyk.icc cmyk.icc *Lab

Der Vorteil liegt darin, dass man dieses abstrakte Profil für die Umwandlung von sRGB

Daten bei einem CSS-3 fähigen Browser theoretisch auch per Link in der CSS-Datei

verwenden könnte. Alternativ kann man das abstrakte Profil per jpegicc anwenden um

einen Softproof zu erhalten.

jpegicc -n -i softproof.icc

sRGB.jpeg sRGB_softproof.jpeg

Die Beispielanwendung prooft verschiedene Druckfarbräume absolut farbmetrisch in den

sRGB Farbraum. Für professionelle Anwendungen jedoch ist das ungeeignet, denn Informationen

in den Grüntönen gehen dabei wiederum verloren, da sRGB in diesem Bereich

ein geringeres Gamut als die Druckprozesse aufweist.

30 LCMS jpegicc Manpage :

http://linux.com.hk/penguin/man/1/jpegicc.html

82


2.3. ANWENDUNGSBEISPIELE 83

Entwickelt man eine Anwendung für ein Grafikbüro und geht man davon aus, dass alle

Benutzer einen farbmanagementfähigen Browser verwenden, kann man den Softproof in

anderen Farbräumen erstellen und das Potential voll ausschöpfen.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/iccproof 31

2.3.4. Profile auswerten und auslesen

Damit Online Datenbanken automatisiert Informationen zur Verfügung stellen können,

ist es notwendig, in Bilder eingebettete Daten auszulesen. Bildbeschreibungen und Stichworte

lassen sich in IPTC-Profilen speichern und ermöglichen automatisierte Workflows.

So kann der Fotograf die Metainformationen gleich mit in die Bilddatei speichern und

die Bilddatenbank kann sie ausgeben.

Auch die Daten von ICC-Profilen können ausgegeben werden. Man kann sich mit LCMS

den Weisspunkt anzeigen lassen oder einzelne Profil-Tags auswerten, um genaue Informationen

über ein Bild oder ein Farbprofil zu erhalten. Ich habe exemplarisch eine Anwendung

erstellt, die zeigt, welche Informationen sich mit verschiedenen Tools anzeigen

lassen.

Mit ArgyllCMS iccdump lassen sich einzelne ICC-Profil-Tags ausgeben. LCMS wtpt gibt

den Weisspunkt eines Farbprofils aus und das Perl Exif Tool ist der Spezialist für die

Ausgabe vieler verschiedener Metadatenformate.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/iccprofileInfo 32

2.3.5. Farbdifferenzen

Eine JavaScript-Anwendung soll demonstrieren, wie sich Fehlinterpretationen von Bilddaten

im Webbrowser auswirken. Die Anwendung geht davon aus, dass ein Bild im

AdobeRGB-Farbraum vorliegt, der Webbrowser dies jedoch nicht erkennt und die Bilddaten

als sRGB-Farbdaten interpretiert.

Es werden beliebige RGB-Farbwerte in den Lab Farbraum umgerechnet, einmal nach

der sRGB-Spezifikation 33 und einmal nach der Adobe-RGB Spezifikation. 34 Aus zwei

31 Beispielanwendung: ICC-Softproof :

http://colormanagement.digitaldonkey.de/iccproof

32 Webanwendung: Informationen über ICC Profile ausgeben :

http://colormanagement.digitaldonkey.de/iccprofileInfo

33 A Standard Default Color Space for the Internet - sRGB :

http://www.w3.org/Graphics/Color/sRGB

34 Adobe R○ RGB (1998) Color Image Encoding, Version 2005-05 :

http://www.adobe.com/digitalimag/pdfs/AdobeRGB1998.pdf

83


2.3. ANWENDUNGSBEISPIELE 84

resultierenden Lab-Farbwerten wird der Farbabstand DeltaE berechnet und angezeigt.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/farbdifferenz 35

2.3.6. Farbprofile

Die Seite über Farbprofile demonstriert was der verwendete Webbrowser mit eingebetteten

Farbprofilen anfangen kann. Für Surfer mit Apples Safari sieht alles gleich aus, da er

die eingebetteten Farbprofile auswertet. Andere Surfer können ein buntes Durcheinander

verschiedener Farbraum-Fehlinterpretationen begutachten.

Nicht alle verwendeten Bildformate sind von jedem Webbrowser darstellbar. Wenn Bilder

nicht angezeigt werden, wird das entsprechende Bildformat vom verwendeten Browser

nicht unterstützt.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/profiletest 36

35 Webanwendung: Visualisierung von Profilfehlinterpretation :

http://colormanagement.digitaldonkey.de/farbdifferenz

36 Webanwendung: Darstellung unterschiedlicher Bildformate im Webbrowser :

http://colormanagement.digitaldonkey.de/profiletest

84


A. Anhang

A.1. Weiterführende Informationen zu den

Programmen

A.1.1. ImageMagick

Der Umgang mit Farbprofilen bei ImageMagick

ImageMagick ist nur in Kombination mit LCMS in der Lage, Farbprofile zu verarbeiten

(->A.1.1). Die -profile Option funktioniert theoretisch mit allen von ImageMagick

unterstützten Bildformaten, die Profile einbinden können.

Welche Profile sind vorhanden?

Der Befehl identify 1 gibt Informationen über das verwendete Bild preis. Die Option

-verbose macht die Ausgabe detaillierter.

Profile hinzufügen

Ein wenig verwirrend ist die Verwendung der "+ünd "Parameter: Ein Plus steht nämlich

für das Entfernen, ein Minus für das Hinzufügen. Um einem Bild ein Farbprofil zuzuweisen

verwendet man:

mogrify -profile sRGB.icm bild.jpeg

Profile entfernen

Neben ICC-Profilen kann ImageMagick auch mit IPTC Profilen umgehen. Ein Aufruf

mit den Optionen +profile icm entfernt Farbprofile.

+profile iptc entfernt IPTC Profile. Die Option -strip entfernt alle im Bild enthaltenen

Metadaten und ist zur Zeit für die Webausgabe zu empfehlen.

Profile auslesen

Für das Auslesen von Profilen ist die -profile Option nicht notwendig:

convert cockatoo.jpg profile.icm

extrahiert ein ICC Profil aus dem Jpeg. Ist kein ICC-Profil eingebettet, erhält man eine

0-Byte-icm Datei. ImageMagick erkennt an der Dateiendung welche Art von Profil

1 ImageMagick identify Dokumentation :

http://imagemagick.org/script/identify.php

85


A.1. WEITERFÜHRENDE INFORMATIONEN ZU DEN PROGRAMMEN 86

ausgelesen werden soll. Zum Auslesen des IPTC-Profils würde der folgende Befehl ausreichen:

convert Bild.jpeg

iptc-Profil.iptc

ImageMagick und LCMS

Will man feststellen, ob das LCMS-Library in ImageMagick verwendet wird, hilft der

Befehl identify -list configure weiter. Unter den ausgegebenen Konfigurationseinstellungen

findet sich eine Zeile »LIBS«, in der LCMS unter der Bezeichnung "llcmsäuftauchen

sollte:

LIBS -lMagick -llcms -ltiff -lfreetype -ljpeg -lpng -lXext -lXt -lSM -l Ist

LCMS nicht in ImageMagick vorhanden, aber auf dem Server verfügbar, (z.B. man wtpt)

muss ImageMagick mit der Option --with-lcms neu kompiliert werden.

Hilfe erhält man auf der Website 2 und durch die Unix-Manpages der einzelnen Tools.

Welche Tools man verwenden kann, klärt ein man ImageMagick auf der Kommandozeile.

An das ImageMagick Forum 3 kann man sich bei Problemen wenden.

A.1.2. LCMS

Die Informationen sind für die Kommandozeilennutzung von LCMS 4 leider etwas dürftig,

die Manpages der einzelnen Tools spartanisch - sie bieten nur die Optionsparameter und

unkommentierte Beispiele. Ein Tutorial erklärt die Verwendung von LCMS als Library

5 für andere Programmiersprachen.

Es folgt eine kurze Einführung in die LCMS-Tools:

icclink

Mit icclink lassen sich DLP-Profile erstellen, die es ermöglichen, komplexe Farbtransformationen,

wie beispielsweise einen Proof in ein einziges Farbprofil zu packen. Das spart

Rechenzeit bei sich wiederholenden Aufgaben. Man kann beispielsweise ein DLP einmalig

mit sehr hoher Genauigkeit erstellen und dann als Vorlage für viele Bilder verwenden.

6

icclink -t1 -x -o softproof.icc sRGB.icm euro.icm euro.icm sRGB.icm

2 ImageMagick Projektwebseite: Dokumentation und Download :

http://imagemagick.org/script/index.php

3 ImageMagick Forum :

http://studio.imagemagick.org/discussion-server/

4 LCMS Projektseite :

http://www.littlecms.com

5 Tutorial: LCMS als Library einsetzen :

http://www.littlecms.com/tutorial.txt

6 LCMS icclink Manpage :

http://linux.com.hk/penguin/man/1/icclink.html

86


A.1. WEITERFÜHRENDE INFORMATIONEN ZU DEN PROGRAMMEN 87

jpegicc

ist für die farbrichtige Umwandlung von jpeg-Bildern geeignet. Es erkennt eingebettete

Farbprofile und kann sowohl mit RGB- als auch CMYK-Dateien umgehen.

Laut Manpage ist auch eine Möglichkeit für den Softproof vorgesehen, die bei meinen

Tests jedoch nicht zum gewünschten Ergebnis führte.

7

tifficc

bietet ähnliche Funktionen wie jpegicc für das TIFF-Dateiformat. Zusätzlich lassen sich

auch DLP-Profile anwenden.

8

wtpt

Das Programm "Whitepoint" 9 gibt Informationen zum Weisspunkt eines Farbprofils

aus. Verwendet man den Befehl:

wtpt

ruft man wtpt ohne Parameter auf. Man kann XYZ Farbwerte umrechnen und herausfinden,

ob sie zu einem Standard gehören.

wtpt

X? 0.3127 Y? 0.3291 Z? 0.3582

führt zu folgender Ausgabe:

WhitePoint : D65 (daylight)

XYZ=(0.3, 0.3, 0.4)

Lab=(64.088, -1.683, -13.368)

(x,y)=(0.313, 0.329)

Hue=262.82, Chroma=13.47

7 LCMS jpegicc Manpage :

http://linux.com.hk/penguin/man/1/jpegicc.html

8 LCMS tifficc Manpage :

http://linux.com.hk/penguin/man/1/tifficc.html

9 LCMS wtpt Manpage :

http://linux.com.hk/penguin/man/1/wtpt.html

87


A.1. WEITERFÜHRENDE INFORMATIONEN ZU DEN PROGRAMMEN 88

icctrans

ist ein kleiner Farbtaschenrechner. Zunächst wird icctrans mit einem Eingabe- und Ausgabeprofil

oder einem DLP aufgerufen. Danach hat man die Möglichkeit, einzelne Farbwerte

einzugeben und bekommt deren Entsprechung im Zielfarbraum zurück. Benutzt

man den Parameter -v (verbose) werden auch die entsprechenden XYZ und Lab-Werte

angezeigt.

10

icctrans -v -i EuroscaleCoatedv2.icm -osRGB.icm

Die Frage nach dem Farbwert zur Umrechnung:

C (0..100)? 0

M (0..100)? 0

Y (0..100)? 0

K (0..100)? 100

Das Ergebnis:

R=27.25 G=27.75 B=31.67

X=1.1292 Y=1.1536 Z=1.1414

L*=10.2037 a*=0.5664 b*=-2.8438

A.1.3. ArgylCMS

Die Verwendung einzelner Programme aus dem ArgyllCMS Paket ist bestechend einfach.

Für Unix Systeme werden sie fertig kompiliert geliefert, müssen also nur in ein Verzeichnis

entpackt und mit Ausführungsrechten versehen werden.

Das Tool iccdump 11 kann präzise Informationen über Farbprofile ausgeben. Ist das

Profil in einem Bild eingebettet muss es erst ausgelesen werden. Dazu verwendet man

am besten ImagaMagick convert. Für die Ausgabe in der Beispielanwendung 12 habe ich

eine einfache Standardausgabe verwendet.

iccdump -v2

Die Option -v regelt wie viele Details mit ausgegeben werden. -v1 gibt nur die vorhandenen

Tags aus, während -v3 ohne die Angabe eines Tags (Option -t) alle

Profildaten auf den Bildschirm bringt.

10 LCMS icctrans Manpage :

http://linux.com.hk/penguin/man/1/icctrans.html

11 ArgylCMS iccdump Manpage :

http://www.argyllcms.com/doc/iccdump.html

12 Beispielanwendung ICC-Profil Informationen auslesen :

http://colormanagement.digitaldonkey.de/iccprofileInfo/

88


A.2. FORMALISIERTER ENTWICKLUNGSPROZEß BEIM W3C 89

Es lassen sich aber auch die Binärdaten einzelner Tags extrahieren, sie können durch geeignete

Scriptprogrammierung dann in andere Datenformate gewandelt werden. Denkbar

wäre eine Darstellung der Gammakurven über SVG oder oder ein »on the Fly« erzeugtes

Gif-Bild.

Online Dokumentation 13

Diskussionsforum 14

Anwendunsbeispiele für ArgyllCMS 15

A.2. Formalisierter Entwicklungsprozeß beim

W3C

Es gibt folgende Entwicklungszustände für vom W3C bearbeitete Themen (Status of

Document) 16

• Working Draft (WD - Arbeitsentwurf)

Ein Arbeitsentwurf wird veröffentlicht, damit W3C-Mitglieder und die Öffentlichkeit

die Ideen prüfen und Kommentare dazu abgeben können.

• Last Call Announcement (letzter Aufruf)

Der letzte Aufruf einer Arbeitsgruppe für weitere Ideen und Vorschläge. Nach dem

Last Call, dessen Zeitpunkt von der Arbeitsgruppe festgelegt wird, ist es nicht mehr

vorgesehen einem WD weitere Funktionalitäten hinzuzufügen.

• Candidate Recommendation (CR -Empfehlungskandidat)

Wenn die Arbeitsgruppe davon ausgeht, dass ein WD ausreichend abgestimmt und

geprüft wurde und den technischen Anforderungen der Arbeitsgruppe entspricht,

ändert sie den Status des Dokuments in eine CR. Ziel ist es nun, Erfahrungen mit

der Umsetzung (Implementierung) des künftigen Standards zu sammeln.

• Proposed Recommendation (PR - Empfehlungsvorschlag)

Ein Empfehlungsvorschlag ist ein ausführlicher technischer Bericht. Er wird nach

ausführlichen Tests der Implementierbarkeit und Zuverlässigkeit erstellt und muss

vom W3C Advisory Committee 17 bestätigt werden, bevor eine Empfehlung ausgesprochen

werden kann.

13 ArgyllCMS Online Dokumentation :

http://www.argyllcms.com/doc/ArgyllDoc.html

14 ArgyllCMS Diskussionsforum :

http://www.freelists.org/cgi-bin/archive-search.fcgi?query=abstract&list=argyllcms

15 ArgyllCMS Anwendunsbeispiele :

http://www.argyllcms.com/doc/Scenarios.html

16 W3C Recommendation Track Process :

http://www.w3.org/2004/02/Process-20040205/tr.html#Reports

17 W3C Advisory Committee:

http://www.w3.org/2004/02/Process-20040205/organization.html#AC

89


A.3. MEDIENTYPEN IN CSS 90

• Recommendation (REC - Empfehlung)

Wird erst ausgesprochen, wenn jede Funktion (feature) der PR einmal implementiert

wurde. Es ist ausdrücklich gewünscht, dass die Arbeitsgruppe in der Lage ist

zwei vollständig kompatible Umsetzungen (interoperable implementations) des künftigen

Standards vorzuweisen. Zudem muss ein Konsens innerhalb der Arbeitsgruppe

und des W3C-Advisory-Committees erreicht sein. Eine Recommendation kann abgesehen

von der schon erwähnten rechtlichen Lage gleichwertig wie ein Standard

(z.B. ISO-Standard) angesehen werden.

A.3. Medientypen in CSS

Die Namen der Medientypen sind vom W3C festgelegt, Groß-Kleinschreibung ist beliebig.

Es ist vorgesehen, die Anzahl der Medientypen in Zukunft nach Bedarf zu erweitern.

Die Beschreibung kann großzügig interpretiert werden, sie gilt als informativ.

• all Styles für alle Ausgabegeräte

• braille

fühlbare Braille Geräte

• embossed

Braille Drucker (seitenweise - paged)

• handheld

Handheld Geräte (typischerweise kleine Bildschirme und begrenzte Ressourcen).

• print

Medien die eine seitenweise Ausgabe erfordern, bzw. die Druckvorschau am Bildschirm

• projection

für projezierte Präsentationen (Power-Point), seitenweise Ausgabe.

• screen

für farbige Bildschirme und Displays

• speech, aural

Sprachausgabegeräte

• tty

Geräte Textausgabe in fester Breite (charackter-grid). Der Begriff tty steht im

Unix-Bereich für Terminal und Kommandozeile

• tv

Fernsehbildschirm (geringe Auflösung, begrenztes Scrollen, Audioausgabe)

90


A.4. UMFRAGE 91

A.4. Umfrage

Im Rahmen dieser Diplomarbeit wurde eine Online-Umfrage erstellt. Sie richtet sich an

Betreiber von Webseiten mit farblich relevanten Inhalten, wie Bildagenturen, Onlineshops

für Textilien, Farben etc. Mit den Fragen wird versucht, einen Überblick darüber zu

bekommen, wie Website-Betreiber mit Farbproblemen umgehen, ob Hilfen für Kunden

vorgesehen sind und welche Kosten dadurch entstehen.

Im Internet zu finden unter

http://colormanagement.digitaldonkey.de/umfrage 18

A.5. Qualität von Fernsehsignalen

Wie sich verschiedene Übertragungsverfahren auf die Farbqualität auswirken zeigt die

qualitativ ansteigende Einteilung der Übertragungsarten:

• NF-Signal

SW-, Farb- und Audiosignale werden in einem übertragen, das ist beim analogen

Fernsehen und Kabelfernsehen üblich. Es kann aber je nach Übertragungsqualität

zu erheblichen Störungen kommen.

• Composite-Signal

enthält nur die YUV-Bildinformation

• sVGA

Y, und die zwei Farbsignale erhalten einen eigenen Übertragungskanal. Übersprechen

zwischen Farb- und SW-Bildinformationen ist ausgeschlossen.

• Component

Y und die Farbsignale erhalten je einen eigenen Übertragungskanal. Geringste Störungseinflüsse.

A.6. Quelltexte der Anwendungen

Im Folgendenn Anhang gibt es die PHP (HTML) und Javascript Quelltexte der in Kapitel

2.3 vorgestellten Anwendungen. Es wurden nur die für die Farbanwendungen relevanten

Teile der Webanwendung eingefügt.

18 Webanwendung: Colormanagement Umfrage :

http://colormanagement.digitaldonkey.de/umfrage

91


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48



49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

array('NTSC RGB jpeg', 'Monitor_NTSC.jpg'),

array('PAL RGB jpeg', 'Monitor_PAL.jpg'),

array('Wide Gammut RGB jpeg', 'Monitor_Widegammut.jpg'),

array('sRGB jpeg ohne ICC-Profil', 'Monitor_sRGB_no_profile.jpeg'),

array('SWOAP tif', 'SWOAPv2.tif'),

);

/* die Ausgabe des konvertierten Bildes vorbereiten */

$convertedImage = array('Konvertiertes sRGB Bild', 'sRGB.jpg',$localUrl.'sRGB.jpg',$

localRoot.'sRGB.jpg','width: 300px; height: 225px;');

/* POST auswerten */

if(isset($_POST['selectColorspace'])){

/* postImageData (legt auch select voreinstellung fest !) */

$postImageData= getPost($images);

/* makeTheImageData Rerurn: array(error[bool], String or array) */

$theImageData = makeTheImageData($postImageData);

/* Fehlerprüfen */

if(!$theImageData[0]) {

$theImageData=$theImageData[1];

$printImage=true;

}else{

/* Fehler beim Laden des Bildes */

$pageString.=''.$theImageData[1].'';

}

}

/* AUSGABE unter Select Start */

$pageString.=''; # $pageString Start

/* SELECT Bilderauswahl */

$pageString.=makeSelect($images);

$pageString.=$text1; # aus text.html.php

/* Bild wurde gewählt */

if($printImage){

/* Ausgabe für image starten */

#$pageString.=makeHead($theImageData);

$pageString.=makeImage($theImageData);

/* nur konvertieren, wenn auch ein Profil eingebettet ist ! */

# convert tmp.icm

$profile = makeTempProfile($theImageData);

if($profile[0]==0){

/* Image Magick convert -profile */

93


96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

$proof=makeProof($theImageData);

$pageString.= makeImage($convertedImage);

if($proof[0]==0){

$pageString.=$proof[1];

}

}

}

/* Html Ausgabe */

print($pageString.' ');

# Make Proof

function makeProof($theImageData){

# convert -profile sRGB.icm cmyk.jpeg RGB.jpeg

$command ="rm $GLOBALS[localRoot]sRGB.jpg && /usr/local/bin/convert -

profile $GLOBALS[localRoot]sRGB.icm $theImageData[3] $GLOBALS[localRoot]sRGB.jpg";

#echo $command;

$outputs=false;

$return = array(true,'');

exec($command,$outputs,$return[0]);

if($return[0]==0){

foreach($outputs as $a => $i){

$return[1].=$i."";

}

}else{

$return[1] = "Error getting 'convert -profile' by Exec by $val 'convert -profile' Exit Status: ".$error."";

}

return $return;

}

?>


94


B. Literaturverzeichnis

Eine Arbeit über Farbmanagement im Internet basiert naturgemäß auf zahlreichen Quellen

aus dem Internet. Ich habe mich stets bemüht, seriöse und etablierte Quellen zu verwenden.

Bei einem so jungen Thema ist gedruckte Literatur eher die Ausnahme.

Als Quellen gibt es ein Literaturverzeichnis und kommentierte Link-Listen zu den einzelnen

Kapiteln

B.1. Literaturverzeichnis verwendeter Bücher und

Aufsätze

Autor(en) Titel Untertitel

Mitchell R. Rosen, Lawrence A. Taplin, Francisco H. Imai, Roy S.

Berns, and Noboru Ohta Spectral Color Management for a Virtual Swatch

Publiziert in: "The 9th Color Imaging Conference: Color Science and Engineering: Systems,

Technologies, Applications Scottsdale, Arizona", 2001

Michael Has, Color Management Current Approaches, Standards and Futur Perspectives

Previously published in IS&T’s NIP11, p. 441, 1995 11th International Congress on Advances

in Non-Impact Printing Technologies

Helge Moritz Lexikon der Bildverarbeitung

Hüthig Verlag Heidelberg, 2003

Tobias Huneke Internetseite zur Visualisierung von ICC Profilen mit Hilfe

von 3D-Farbraummodellen

Diplomarbeit FH-Köln, Juni 2002

Michael Stokes, Matthew Anderson, Srinivasan Chandrasekar, Ricardo

Motta A Standard Default Color Space for the Internet - sRGB

Version 1.10, November 1996

Michael Haas Color Management Current Aprroaches, Standards und Futur Perspectives

- Recent Progress in Color Management and Communications

1998, ISBN / ISSN: 0-89208-210-0

95


B.1. LITERATURVERZEICHNIS VERWENDETER BÜCHER UND AUFSÄTZE 96

Advanced Color Imaging on the Mac OS

Addison-Wesley Publishing Company, August 1995

Volker Grassmuck Freie Software Zwischen Privat und Gemeineigentum

Bundeszentrale für Politische Bildung, 2.Auflage, Bonn 2004

http://freie-software.bpb.de/Grassmuck.pdf

Marco Catarozzi Colormanagement mit ICC-Profilen in der Praxis

Smart Books Publishing AG, 2001

David Flanagan JavaScript kurz & gut

O’Reilly Verlags GmbH, 2. Auflage 2003

Jan-Peter Homann Digitales Colormanagement

Springer Verlag, 2. Auflage, Sonderausgabe 2000

Leon Atkinson Core PHP 4 Programmierung

Markt+Technik Verlag München, 2001

Palmer W. Agnew und Anne S. Kellermann Distributed Multimedia

Technologies, Applications, and Opportunities in the Digital Information Industry A

Guide for Users and Providers

Addison-Wesley Publishing Company, ACM Press Orford UK, 1996

Iris Fiebinger SVG-Scaleable Vector Graphics Praxiswegweiser und Referenz für

den neuen Vektorgrafikstandard

Markt+Technik Verlag München, 2002

Heiko Wöhr Web-Technologien Konzepte-Programmiermodelle-Architekturen

dpunkt.verlag Heidelberg, 1. Auflage 2004

Claus Biasch-Wiebke Videosysteme Videosysteme, Videokameras, Camcorder

Vogel Buchverlag Würzburg 1. Auflage 1991

Dan Parks Sydow Mac OS X Programmierung

mitp-Verlag Bonn, 1. Auflage 2002

Uwe Baufeldt , Hand Rösner, Jürgen Scheuermannn, Hans Walk

Informationen übertragen und drucken Lehr und Arbeitsbuch für das Berufsfeld

Drucktechnik

Verlag Beruf und Schule Ithehohe, 14. Auflage 2000

Michael Hilscher Der eigene Webserver

Galileo Press, Bonn 2003

96


B.2. LINKS ZUM THEORETISCHEN TEIL 97

B.2. Links zum Theoretischen Teil

1 Color Real, Web-Farbmanagement per Java Applet :

http://www.coloreal.com

2 GretagMcBath:

http://www.gretagmacbeth.com

3 Seybold Publications, Westmont USA,1998 :

http://www.seyboldreports.com/SRIP/subs/0207/IP020714.HTM

4 Seybold Publications, Westmont USA,1998 :

http://www.seyboldreports.com/SRPS/subs/2904/html/news-comments.html

5 Tobias Huneke, Internetseite zur Visualisierung von ICC Profilen mit Hilfe von

3D-Farbraummodellen, FH-Köln, Juni 2002 :

http://iccview.de/download/ICCView-Colormanagement.pdf

6 Informationeller Globalismus, Doktorarbeit von Georgios Chatzimarkakis, Kap 6.1,

RFWU Bonn, 2000 :

http://deposit.ddb.de/cgibin/dokserv?idn=967325897&dok_var=d1&dok_ext=pdf&filename=967325897.pdf

7 Fernabsatzgesetz:

http://dejure.org/gesetze/FernAbsG

8 Spectral Color Management for a Virtual Swatch; Mitchell R. Rosen, Lawrence A.

Taplin, Francisco H. Imai, Roy S. Berns, and Noboru Ohta. Publiziert in: »The 9th

Color Imaging Conference: Color Science and Engineering: Systems, Technologies,

Applications Scottsdale, Arizona«, 2001 :

http://www.imaging.org/store/epub.cfm?abstrid=6898

9 Beschreibung der Internetdienste :

http://de.wikipedia.org/wiki/Internet#Dienste

10 Frankfurter Allgemeine Zeitung,10.01.2001, S.8 :

http://www.dgap.org/Publikationen/Weltwirtschaft/Wie

das%20Internet%20die%20Weltpolitik%20ver%E4ndert.html

11 ikT in Deutschland - Informations- und Kommunikationstechnologien 1995 – 2003,

Statistisches Bundesamt Wiesbaden, Sept 2004, S.22 :

http://www.destatis.de/download/d/veroe/iktvoe.pdf

12 Testseite: Demonstriert Unterschiede zwischen gif- und Hintergrundfarbwert, Nov

2005 :

97


B.2. LINKS ZUM THEORETISCHEN TEIL 98

http://hotwired.lycos.com/webmonkey/00/37/stuff2a/complete_websafe_216/test.html

13 »Death of the Websafe Color Palette?«, David Lehn and Hadley Stern, 6.9.2000 :

http://hotwired.lycos.com/webmonkey/00/37/index2a.html

14 »The browser-safe web palette«, Lynda Weinman, Nov.2005 :

http://lynda.com/hex.html

15 Statistik zur Farbfähigkeit der Webbenutzer, Nov. 2005 :

http://reviews-zdnet.com.com/4520-6033_16-4204478.html

16 Webserver Apache, Apache Software Foundation :

http://www.apache.de/

18 Webanwendung zur Visualisierung von Farbdifferenzen :

http://colormanagement.digitaldonkey.de/farbdifferenz

19 »A Standard Default Color Space for the Internet - sRGB«, Michael Stokes,

Matthew Anderson, Srinivasan Chandrasekar, Ricardo Motta, Version 1.10, November

1996 :

http://www.w3.org/Graphics/Color/sRGB

20 Adobe R○ RGB (1998) Color Image Encoding, Version 2005-05 :

http://www.adobe.com/digitalimag/pdfs/AdobeRGB1998.pdf

21 PDF Reference - fifth edition, Adobe R○ Portable Document Format Version 1.6 :

http://partners.adobe.com/public/developer/en/pdf/PDFReference16.pdf

22 Das Java Paket java.awt.color in Java 1.4 bietet Klassen für Farbräume und eine

Implementierung des ICC Standards (Version 3.4) :

http://java.sun.com/j2se/1.4.2/docs/api/java/awt/color/package-summary.html

23 Color Real, Web-Farbmanagement per Java Applet :

http://www.coloreal.com

24 e-color.inc »True Internet Color System« Farbmanagement mit Java Applets :

http://www.peimag.com/pdf/pei00/pei0300/benedettipei0300.pdf

25 Portable Network Graphics (PNG) Specification (Second Edition), Nov. 2003 :

http://www.w3.org/TR/2003/REC-PNG-20031110

26 Lexikon der Bildverarbeitung, Helge Moritz, Hüthig Verlag Heidelberg, 2003

27 Farbprofile unter Linux uns OS-X analysieren: ICC-Examin :

http://behrmann.name

98


B.2. LINKS ZUM THEORETISCHEN TEIL 99

28 Experimentielles Colormanagment für Unix: Argyl-CMS :

http://www.argyllcms.com

29 ICC-Profile online vergleichen :

http://www.iccview.de

32 CIE Specification ICC.1:2004-10 :

http://www.color.org/ICC1V42.pdf

33 A Standard Default Color Space for the Internet - sRGB :

http://www.w3.org/Graphics/Color/sRGB

34 »Wohlgefühl im Farbraum«, Digit 2/2005, Klie Verlag Hann. Münden

35 Eine Übersicht über Weißpunkte und Primärfarben wichtiger Farbräume :

http://www.brucelindbloom.com/index.html?WorkingSpaceInfo.html

36 High Definition TeleVision, ITU-Standard BT-709.:

http://www.itu.int

38 Die ICC-Spezifikation 1-2004-10 beschreibt -Profile der Version 4.2.0.0 :

http://www.color.org/ICC1V42.pdf

40 Tobias Huneke, Internetseite zur Visualisierung von ICC Profilen mit Hilfe von

3D-Farbraummodellen, FH-Köln, Juni 2002 :

http://iccview.de/download/ICCView-Colormanagement.pdf

41 CIE Specification ICC.1:2004-10 :

http://www.color.org/ICC1V42.pdf

42 Webanwendung zur Analyse von ICC-Farbprofilen :

http://colormanagement.digitaldonkey.de/iccprofileInfo

43 CIE Spezifikation ICC.1-2004-10 :

http://www.color.org/ICC1V42.pdf

44 Michael Haas, Color Management - Current Aprroaches, Standards und Futur

Perspectives - Recent Progress in Color Management and Communications 1998, S.

14-18, ISBN / ISSN: 0-89208-210-0

45 Introduction to Microsoft Color Management, 7.11.05 :

http://www.microsoft.com/whdc/device/display/color/icmwp.mspx

46 Apple Developper - Color Management Overview :

http://developer.apple.com/documentation/GraphicsImaging/Conceptual/csintro/csintro.pdf

99


B.2. LINKS ZUM THEORETISCHEN TEIL 100

47 Advanced Color Imaging on the Mac OS, Addison-Wesley Publishing Company

August 1995

48 Apple Developper: Technical Note TN2035 :

http://developer.apple.com/technotes/tn/tn2035.html

49 Internet Explorer 4.01 Mac Release Notes, 7.11.05 :

http://support.microsoft.com/default.aspx?scid=kb;en-us;192270

50 CMS Funktionen für Linux: LCMS »Little Colormanagement System« :

http://www.littlecms.com

51 Experimentielles Colormanagement für Linux: Argyll CMS :

http://www.argyllcms.com

52 Experimentielle Farbmanagement Infrastruktur für Linux: Oyranos-Projekt :

http://www.behrmann.name

54 Windows Color System: The Next Generation Color Management System,

Microsoft White Paper, Sept. 2005 :

http://download.microsoft.com/download/5/d/6/5d6eaf2b-7ddf-476b-93dc-

7cf0072878e6/WCS.doc

55 Preliminary documentation for WindowsCodecs.dll APIs :

http://www.eggheadcafe.com/forumarchives/windowsdeveloperwinfxavalon/Jun2005/post23451501.asp

56 W3C CSS-2.1 Working Darft :

http://www.w3.org/TR/2005/WD-CSS21-20050613

57 »Abschied von der Röhre«, MacUp 12/2004, Redtec Publishing Verlag

58 W3C Candidate Recommendation zum CSS-Mobile-Profile :

http://www.w3.org/TR/2002/CR-css-mobile-20020725

60 W3C Candidate Recommendation für das CSS-Print-Profile vom Februar 2004 :

http://w3c.org/TR/2004/CR-css-print-20040225

61 W3C CSS-TV-Profile Recommendation, Mai 2003 :

http://w3c.org/TR/2003/CR-css-tv-20030514

62 Image Formats for HDTV, John Ive, EBU Technical Review, Juli 2004 :

http://www.ebu.ch/en/technical/trev/trev_299-ive.pdf

63 codestyle.org : »Projection media browser conformance and compatibility« :

http://www.codestyle.org/css/media/projection-BrowserSummary.shtml

100


B.2. LINKS ZUM THEORETISCHEN TEIL 101

64 W3C-Validator.:

http://validator.w3.org

65 Mitglieder und Organisationen des W3C :

http://www.w3.org/Consortium/Member/List

66 W3C Webbrowser: Amaya :

http://www.w3.org/Amaya

67 Alle W3C-Dokumente sind über die W3C Website zu erreichen :

http://www.w3c.org

68 Die Webseite des deutschen W3C-Büros :

http://w3c.de

70 Behindertengleichstellungsgesetz, Bundesgesetzblatt 27.4.2002 :

http://bundesrecht.juris.de/bitv/index.html

71 Web Content Accessibility Guidelines 1.0, 5. Mai 1999 :

http://www.w3.org/TR/WAI-WEBCONTENT

72 Textbrowser: Lynx :

http://lynx.browser.org

74 Extensible Markup Language (XML) 1.1, W3C Recommendation, Feb. 2004 :

http://www.w3.org/TR/xml11/

75 Beispiel für gemischte Namensräume :

http://colormanagement.digitaldonkey.de/xhtml-svg-mathMl

76 Zeichensätze im Überblick :

http://www.fontstuff.net/deutsch/typografie/schrift/lexikon/Zeichensatz

77 Unicode Zeichensatz: ISO/IEC 10646 :

http://www.unicode.org

78 W3C-XHTML-Working-Group:

http://www.w3.org/MarkUp

79 Richtlinien für die Erstellung von HTML-4 kompatiblem XHTML :

http://www.w3.org/TR/xhtml1/#guidelines

80 W3C Empfehlung zur Modularisierung von XHTML :

http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410

81 XHTML 1.1 - W3C-Recommendation vom 31. Mai 2001 :

101


B.2. LINKS ZUM THEORETISCHEN TEIL 102

http://www.w3.org/TR/2001/REC-xhtml11-20010531

82 W3C XHTML 2.0 Working Draft, Mai 2005 :

http://www.w3.org/TR/2005/WD-xhtml2-20050527

83 W3C XHTML-Basic Recommendation, Dezember 2000 :

http://www.w3.org/TR/2000/REC-xhtml-basic-20001219

84 W3C CSS 2.1 Working Draft, Juni 2005 :

http://www.w3.org/TR/2005/WD-CSS21-20050613/

86 W3C CSS-1 Recommendation vom Dezember 1996 :

http://www.w3.org/TR/CSS1

87 W3C CSS-2 Recommendation vom Mai 1998 :

http://www.w3.org/TR/1998/REC-CSS2-19980512

88 CSS-2.1 Working Draft Juni 2005 :

http://www.w3.org/TR/CSS21/css2.pdf

89 Introduction to CSS3 - ein überblick über vorgesehne CSS-3 Module :

http://www.w3.org/TR/2001/WD-css3-roadmap-20010406

90 Informationen über Macromedia Flash :

http://openswf.org/spec.html

92 Mittlerweile gilt die SVG-1.1 Specification, W3C Recommendation Januar 2003 :

http://www.w3.org/TR/2003/REC-SVG11-20030114/

93 Ein vom Autor bei Mediaevent verfasster Artikel befasst sich mit der

Browserunterstützung von SVG, Nov. 2005 :

http://www.mediaevent.de/article.php/20060103130224175

94 W3C MathML 1.1 Recommendation vom Juli 1999 :

http://www.w3.org/1999/07/REC-MathML-19990707

95 Webseite des Webbrowsers Opera :

http://www.opera.com

96 Ein XHTML-Profil, das die Vermischung von XHTML, MathML und SVG

ermöglicht :

http://w3c.org/XHTMLplusMathMLplusSVG

97 Beispiel für gemischte Namensräume :

http://colormanagement.digitaldonkey.de/xhtml-svg-mathMl

98 Scalable Vector Graphics (SVG) 1.1 Recommendation, Januar 2003 :

102


B.3. LINKS ZUR BILDVERARBEITUNG AUF DEM WEBSERVER 103

http://www.w3.org/TR/2003/REC-SVG11-20030114/

99 W3C CSS-3 Color Module, Canaidate Recommendation vom Mai 2003 :

http://www.w3.org/TR/2003/CR-css3-color-20030514

100 Farbnamen und ihre numerischen Werte :

http://www.mediaevent.de/tutorial/farbcodes.html

101 W3C CSS-3 Color Module, Canaidate Recommendation vom Mai 2003 :

http://www.w3c.org/TR/2003/CR-css3-color-20030514

103 Umrechnung von HSL in RGB Farbwerte. W3C Color-Module Candidate

Recommendation, Dezember 2004 :

http://www.w3.org/TR/css3-color/index.html#hsl-examples

104 Farbnamen für Systemfarben, W3C Color-Module Candidate Recommendation,

Dezember 2004 :

http://www.w3.org/TR/css3-color/index.html#css-system

105 Es gelten die vom ICC Definitionen der ICC Profile Format Spezifikation,

Version 3.2. 1995 für die Rendering Intents im CSS-3 Color Module :

http://www.color.org/icc32.pdf

106 W3C Color Module über den Umgang mit verschiedenen Gammawerten

unterschiedlicher Systeme :

http://www.w3.org/TR/css3-color/#gamma

B.3. Links zur Bildverarbeitung auf dem Webserver

1 Bildbeschnitt lässt sich mit Java-Applets direkt im Webbrowser vornehmen.

Realisiert in der Online-Bildergalerie Gallery2 :

http://gallery.menalto.com

3 GNU-Projekt Website :

http://gnu.org

4 Volker Grassmuck, Freie Software - Zwischen Privat und Gemeineigentum,

Bundeszentrale für Politische Bildung, 2.Auflage, Bonn 2004, S. 229 :

http://freie-software.bpb.de/Grassmuck.pdf

6 Mozilla Public License (MPL) :

http://www.mozilla.org/MPL/MPL-1.1.html

103


B.3. LINKS ZUR BILDVERARBEITUNG AUF DEM WEBSERVER 104

7 Das IFOS Lizenz-Center bietet einen Überblick über verschiedene Open Source

Lizenzen, Dez. 2005 :

http://www.ifross.de/ifross_html/lizenzcenter.html

8 Gartner, Chart of Accounts, E-Rev. n Revised 16 June 2003 :

http://www.gartner.com/4_decision_tools/modeling_tools/costcat.pdf

9 Website von NET-PBM :

http://netpbm.sourceforge.net

10 NET PBM Projektseite :

http://netpbm.sourceforge.net/

11 Net PBM Readme :

http://netpbm.sourceforge.net/README

12 Website von GD :

http://www.boutell.com/gd/

13 PHP-GD Dokumentation :

http://de3.php.net/gd

14 PHP-GD-Website :

http://www.boutell.com/gd/

15 Webseite von ImageMagick :

http://www.imagemagick.org

17 Webseite vom "Little Color Management System"LCMS :

http://www.littlecms.com

19 MIT Lizenz vom "Massachusetts Institute of Technology":

http://ocw.mit.edu/OcwWeb/Global/license.htm

20 ArgylCMS viewgam Dokumentation :

http://www.argyllcms.com/doc/viewgam.html

21 VRML97 ist ein internationaler Standard: ISO/IEC 14772-1:1997 :

http://www.web3d.org/x3d/specifications/vrml/ISO-IEC-14772-VRML97

22 ArgylCMS icclink Dokumentation :

http://www.argyllcms.com/doc/icclink.html

23 ArgylCMS iccdump Dokumentation :

http://www.argyllcms.com/doc/iccdump.html

24 ArgylCMS Online Dokumentation :

104


B.4. LINKS AUS DEM ANHANG 105

http://www.argyllcms.com/doc/ArgyllDoc.html

25 Perl Artistic License :

http://www.perl.com/pub/a/language/misc/Artistic.html

27 Website zum Perl ExifTool :

http://www.sno.phy.queensu.ca/˜phil/exiftool

28 Beispielanwendung: Bildumwandlung nach sRGB :

http://colormanagement.digitaldonkey.de/sRGB-konvertierung

29 Beispielanwendung: Safari browsertest :

http://colormanagement.digitaldonkey.de/safaritest

30 LCMS jpegicc Manpage :

http://linux.com.hk/penguin/man/1/jpegicc.html

31 Beispielanwendung: ICC-Softproof :

http://colormanagement.digitaldonkey.de/iccproof

32 Webanwendung: Informationen über ICC Profile ausgeben :

http://colormanagement.digitaldonkey.de/iccprofileInfo

33 A Standard Default Color Space for the Internet - sRGB :

http://www.w3.org/Graphics/Color/sRGB

34 Adobe R○ RGB (1998) Color Image Encoding, Version 2005-05 :

http://www.adobe.com/digitalimag/pdfs/AdobeRGB1998.pdf

35 Webanwendung: Visualisierung von Profilfehlinterpretation :

http://colormanagement.digitaldonkey.de/farbdifferenz

36 Webanwendung: Darstellung unterschiedlicher Bildformate im Webbrowser :

http://colormanagement.digitaldonkey.de/profiletest

B.4. Links aus dem Anhang

1 ImageMagick identify Dokumentation :

http://imagemagick.org/script/identify.php

2 ImageMagick Projektwebseite: Dokumentation und Download :

http://imagemagick.org/script/index.php

105


B.4. LINKS AUS DEM ANHANG 106

3 ImageMagick Forum :

http://studio.imagemagick.org/discussion-server/

4 LCMS Projektseite :

http://www.littlecms.com

5 Tutorial: LCMS als Library einsetzen :

http://www.littlecms.com/tutorial.txt

6 LCMS icclink Manpage :

http://linux.com.hk/penguin/man/1/icclink.html

7 LCMS jpegicc Manpage :

http://linux.com.hk/penguin/man/1/jpegicc.html

8 LCMS tifficc Manpage :

http://linux.com.hk/penguin/man/1/tifficc.html

9 LCMS wtpt Manpage :

http://linux.com.hk/penguin/man/1/wtpt.html

10 LCMS icctrans Manpage :

http://linux.com.hk/penguin/man/1/icctrans.html

11 ArgylCMS iccdump Manpage :

http://www.argyllcms.com/doc/iccdump.html

12 Beispielanwendung ICC-Profil Informationen auslesen :

http://colormanagement.digitaldonkey.de/iccprofileInfo/

13 ArgyllCMS Online Dokumentation :

http://www.argyllcms.com/doc/ArgyllDoc.html

14 ArgyllCMS Diskussionsforum :

http://www.freelists.org/cgi-bin/archive-search.fcgi?query=abstract&list=argyllcms

15 ArgyllCMS Anwendunsbeispiele :

http://www.argyllcms.com/doc/Scenarios.html

16 W3C Recommendation Track Process :

http://www.w3.org/2004/02/Process-20040205/tr.html#Reports

17 W3C Advisory Committee:

http://www.w3.org/2004/02/Process-20040205/organization.html#AC

18 Webanwendung: Colormanagement Umfrage :

http://colormanagement.digitaldonkey.de/umfrage

106


B.4. LINKS AUS DEM ANHANG 107

107


Abbildungsverzeichnis

Quelle: http://en.wikipedia.org/wiki/First_image_on_the_Web

1.1. Laut Wikipedia das erste im World Wide Web veröffentlichte Bild

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

Quelle: Ein anonymer Onlineshop

1.2. Sie wollten schon immer mal ein T-Shirt kaufen, das so aussieht, als wäre

es mit dem roten Pullover in der Wäsche gewesen? Beispiele für falsche

Farbdarstellung finden sich fast in jedem Onlineshop

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

http://www.destatis.de/download/d/wista/egovernment.pdf

1.3. E-Government und andere Zwecke der Internetnutzung, Statistisches Bundesamt

Wiesbaden, 2005

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Quelle: Ein anonymer Onlineshop

1.4. Wieviele Produkte wegen falscher Farben im Onlineshop an den Hersteller

zurückgehen ist schwer abzuschätzen

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

Quelle: Homann s.232

1.5. Reproduzierbare Betrachtungsbedingungen können mit Hilfe eines Normlichtbetrachters

geschaffen werden

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Quellen: Catarozzi S. 27 und 28

1.6. Auch ungeeignete Kleidung kann zu Farbverfälschungen führen

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.7. Einfluss des Umgebungslichts durch Reflexion auf dem Bildschirm

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Quelle: Nach http://www.microsoft.com/whdc/device/display/color/icmwp.mspx

1.8. Bei Windows ICM erhält man CMM-Funktionalität durch Aufruf von

Win32-Api-Funktionen

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Quelle: Nach http://developer.apple.com/technotes/tn/tn2035.html

1.9. Bei der Verwendung von QuickDraw oder Quartz bei der Programmierung

unter OS-X gibt es Farbmanagement ohne Mehraufwand für den Programmierer

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

108


Abbildungsverzeichnis 109

Quelle: Vom Autor erstellt

1.10. Bei Linux gibt es keine ausgereifte CMM Infrastruktur. Der Anwendungsprogrammierer

muss sich selber um die Implementierung von CMM und

geeignete Ausgabeprofile kümmern.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

Quelle: http://www.w3.org/TR/CSS21/css2.pdf S.98

1.11. Einteilung verschiedener Ausgabemedien

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Quelle: Internet.

1.12. Webseiten auf Kleincomputern, PDAs und dem Handy

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Quelle: Vom Autor mit: http://iccview.de erstellt

1.13. Farbraumvergleich zwischen NTSC und sRGB

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

1.14. Farbraumvergleich zwischen PAL und sRGB

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Quelle: Vom Autor erstellt Quelle: Internet

1.16. Braille Lesegeräte ermöglichen Blinden das Lesen von Texten am Computer

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

1.15. Eine Webseite für unterschiedliche Ausgabemedien

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

Quelle: Nach Catarozzi S. 40

1.17. HSL - steht für Hue, Saturation und Lightness

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Quelle: Vom Autor erstellt

2.1. Bei Gallery kann man Bilder im Webbrowser mit Hilfe eines Java Applets

beschneiden

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

109

Weitere Magazine dieses Users
Ähnliche Magazine