<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Hello Chris,<br>
Thanks very much for the clarification about CUPS and ColorSync.<br>
<br>
But we still should consider, that the described workflow has some
critical points.<br>
If all parts of the PDF should be converted to the profile of the
printer setting by embedding this profile as Output Intent into the
PDF file, it is mandatory, that every PDF-object is a ICCbasedRGB or
ICCbasedCMYK object.<br>
If a PDF file contains DeviceRGB or DeviceCMYK objects, ColorSync
will change such PDF objects automatically and without warning to
ICCbased mainly by embedding e.g. the ColorSync standard profiles in
every PDF object (images, vector graphics, text...)<br>
<br>
Especially in Graphic Arts workflow, which use e.g. PDF/X-1a
workflow, where all PDF content is e.g. DeviceCMYK, such automatic
conversion without warning can make a PDF file unusable by just
importing it into a ColorSync environment and save it again.<br>
<br>
Because of this, graphic art users under Mac OSX avoid the Mac OSX
function "Save as PDF" from the Apple printing dialogue.<br>
<br>
The main problem here is the role of the Output Intent<br>
<br>
In "classic" Graphic Arts workflows, the Output Intent is the same
as the document color space. <br>
E.g. SWOP or ISOcoatedv2 is the intended output. If such a PDF file
should be printed on a inkjet, the user wants to simulate SWOP or
ISOcoatedv2 on his inkjet. <br>
This is solved by using the output intent as source profile and
printer setting profile as target profile during printing. (daily
business in proof printers)<br>
<br>
If we use the ColorSync approach of tagging every PDF object only
for the print pipeline, it may can work quite well. But using the
same approach also for PDF Export can lead to results, the user
don´t wants.<br>
<br>
Because of such experiences, I suggest for the first steps with PDF
and colormanagement a "Flat color approach" where the output Intent
represents the document color space.<br>
<br>
If we can manage such workflows both for printing and PDF-Export, we
can move to more complex workflow dealing with ICC-profiles both on
PDF object level and output intent.<br>
<br>
Best regards<br>
Jan-Peter<br>
<br>
<br>
<br>
<br>
<br>
<br>
Am 07.02.11 22:00, schrieb Chris Murphy:
<blockquote
cite="mid:DAEC09C3-9006-477F-A703-3EED0E88E1D0@colorremedies.com"
type="cite">
<div><span class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style: normal;
font-variant: normal; font-weight: normal; letter-spacing:
normal; line-height: normal; text-indent: 0px; text-transform:
none; orphans: 2; white-space: normal; widows: 2;
word-spacing: 0px;"><span class="Apple-style-span"
style="border-collapse: separate; border-spacing: 0px;
color: rgb(0, 0, 0); font-family: Helvetica; font-size:
12px; font-style: normal; font-variant: normal; font-weight:
normal; letter-spacing: normal; line-height: normal;
text-indent: 0px; text-transform: none; orphans: 2;
white-space: normal; widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse: separate;
border-spacing: 0px; color: rgb(0, 0, 0); font-family:
Helvetica; font-size: 12px; font-style: normal;
font-variant: normal; font-weight: normal; letter-spacing:
normal; line-height: normal; text-indent: 0px;
text-transform: none; orphans: 2; white-space: normal;
widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style:
normal; font-variant: normal; font-weight: normal;
letter-spacing: normal; line-height: normal;
text-indent: 0px; text-transform: none; orphans: 2;
white-space: normal; widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style:
normal; font-variant: normal; font-weight: normal;
letter-spacing: normal; line-height: normal;
text-indent: 0px; text-transform: none; orphans: 2;
white-space: normal; widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0, 0);
font-family: Helvetica; font-size: 12px; font-style:
normal; font-variant: normal; font-weight: normal;
letter-spacing: normal; line-height: normal;
text-indent: 0px; text-transform: none; orphans: 2;
white-space: normal; widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0,
0); font-family: Helvetica; font-size: 12px;
font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal;
line-height: normal; text-indent: 0px;
text-transform: none; orphans: 2; white-space:
normal; widows: 2; word-spacing: 0px;"><span
class="Apple-style-span" style="border-collapse:
separate; border-spacing: 0px; color: rgb(0, 0,
0); font-family: Helvetica; font-size: 12px;
font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal;
line-height: normal; text-indent: 0px;
text-transform: none; orphans: 2; white-space:
normal; widows: 2; word-spacing: 0px;"><br
class="Apple-interchange-newline">
</span></span></span></span></span></span></span></span>
</div>
<br>
<div><br>
<div><br>
</div>
<div>Yes, that is the job of *cupsICCProfile. It allows a print
dialog to cross reference settings with an ICC profile, which
is then returned back to the application (or whatever) writes
out the PDF. The profile is then placed in the PDF print spool
file as the OutputIntent, if you are using ColorSync Color
Matching, or if you're using application color matching (but
not if you're using the 3rd option which is vendor color
matching, which is a proprietary option).</div>
<div><br>
</div>
<div>CUPS itself is just a manager of data. It does no
conversion. Once the PDF spool file is written, CUPS
facilitates the sequential processing of the spool file to get
it to its intended destination in a form that the printer can
consume. So again CUPS is just a manager. On OS X, generically
for a desktop inkjet printer: it will hand the PDF onto a
system defined rasterizer, which in this case is cgpdftoraster
filter. That binary code basically calls in Core Graphics and
ColorSync to do color management and rasterization. CUPS then
hands the raster file off (per the PPD requesting this) onto
rastertoescp filter, which converts the raster into ESC/P
commands.</div>
<div><br>
</div>
<div>A gutenprint driver on Mac OS X also leverages
cgpdftoraster but then uses different filters, obviously, than
Epson's, the rest of the way.</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
<br>
<blockquote type="cite">
<div bgcolor="#ffffff" text="#000000"> If such mappings are
managed outside CUPS e.g. via Oyranos or Gnome Color
Manager, it is not a must for ICC aware print workflow usind
CUPS as transport mechanism.<br>
For the enduser, the presentation of different printer
driver settings from e.g. Gutenprint in the Printing UI
could be realized without CUPS through the LINUX
OpenPrinting Dialogue as an individual option.<br>
</div>
</blockquote>
<div><br>
</div>
<div>Ask who is going to build the drivers before something else
gets implemented. Gutenprint does leverage *cupsICCProfile,
although just as defaults for grayscale, RGB and CMYK. </div>
<div><br>
</div>
<div>If the drivers are never going to automatically help the
user pick a profile for a print condition, and there won't be
some canned profiles for these conditions, then further use of
*cupsICCProfile is indeed pointless.</div>
<div><br>
</div>
<div>In any event, manual selection of an ICC profile (a custom
one presumably) is something that's outside of the PPD,
supplied in the print dialog by whatever generates that dialog
(application? standard system dialog?) and that needs to be
captured so the profile is included in the PDF print spool
file. </div>
<div><br>
</div>
<div>The conversion using that profile happens downstream by
Ghostscript along with rasterization. Then CUPS moves the
color managed raster file along to another filter for either
display (maybe using a tiff filter) or to the printer.</div>
<div><br>
</div>
<div><br>
</div>
<div><br>
</div>
</div>
<div>Chris Murphy</div>
<pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
openicc mailing list
<a class="moz-txt-link-abbreviated" href="mailto:openicc@lists.freedesktop.org">openicc@lists.freedesktop.org</a>
<a class="moz-txt-link-freetext" href="http://lists.freedesktop.org/mailman/listinfo/openicc">http://lists.freedesktop.org/mailman/listinfo/openicc</a></pre>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">--
---------- Please note the new adress --------------
homann colormanagement --------- fon +49 30 611 075 18
Jan-Peter Homann ------------ mobile +49 171 54 70 358
Cotheniusstr. 3 -------- <a class="moz-txt-link-freetext" href="http://www.colormanagement.de">http://www.colormanagement.de</a>
10407 Berlin -------- <a class="moz-txt-link-freetext" href="mailto:homann@colormanagement.de">mailto:homann@colormanagement.de</a>
</pre>
</body>
</html>