[Openicc] profile-configuration, application, CUPS, Ghostscript,
Gutenprint
Jan-Peter Homann
homann at colormanagement.de
Tue Apr 19 19:17:06 EST 2005
hello list
I learned a lot the last days from reading the openn-icc list.
If we are talking about colormanagement for printing, we have often a
chain of
application->CUPS->GhostScript->Gutenprint
In ths chain, the most usable points for doing print-colormanagement are
1) Gutenprint
2) Combination of CUPS / GhostScript
I will dicuss both scenarios in this mail
Ideal workflow with print-colormanagement in Gutenprint
-------------------------------------------------------
The main involved profiles are the profile for document-colorspace,
which is configured in the application and the profile for the
printer/media/gutenprint-setting.
To have a transparent User Interface, it would be fine, when the
profiles for the printer/media/gutenprint-setting are directly
associated with this settings.
If this is the case, choosing a specific gutenprint-setting would
automaticly assign the right-profile for this setting. This profile
could be a cannend profile or it could be a individual made profile,
which is configured for this setting.
If the application would be able to send the actual profile for the
"document-colorspace" via CUPS / GhostScript to Gutenprint, we would
have a complete-colormanagement chain with no hassle of printer-profile
configuration either in the application or CUPS.
colormanagement for the printjob would be done in Gutenprint.
Actualy the colormanagement-chain
application->CUPS-GhostScript->Gutenprint for this workflow is broken on
two points:
A) Configuring the Document-colorspace in CUPS
The application can´t tell CUPS the actual document-profile. This has to
be configured manually in CUPS.
b) Also GhostScript has no possibility to deliver to profile for the
document-colorspace to Gutenprint.
We have a second step where manual profile-configuration is necessary.
If we do the colormanagement in Gutenprint, we have to set the profile
for document-colorspace there.
Print-colormanagement of the printjob in GhostScript
----------------------------------------------
An alternative way to do the print-colormanagement is GhostScript. We
have to look at Gutenprint, find the right profile for the
media/gutenprint setting, specify this profile for he printing-job in
CUPS and tell Gutenprint to print linear without colormanagement.
Also the application can´t tell CUPS the actual document-colorspace. The
user has to configure this manually.
Both ways are not transparent to the user.
Possibities for better print-color architecture
------------------------------------------------
If we wan´t to make it easier to the user, we have two possibilities:
1) pass through of the document-colorspace to Gutenprint
(colormanagement in Gutenprint)
2) generic-printer driver with profile-configuration
(profile-configuration is made in the printer-driver and colormanagement
is done in GhostScript)
Lets compare both solutions:
1) pass through of the document-colorspace to Gutenprint
-----------------------------------------------------------
The profile-configuration according the
printer/media/gutenprint-settings is controlled and executed by the
Gutenprint-team or another group/company which delivers a
Gutenprint-based solution with canned profiles.
Making good cannend profiles is very near to all the printer-specific
stuff like linearization, ink-limiting, rasterization, using
printer-specific settings etc.
The installation and configurationn of profiles for the printer should
be done complete from Gutenprint.
If we do want to make easy printer-colormanagement in Gutenprint, we
need a mechanism to pass through the document-colorspace from CUPS /
GhostScript to Gutenprint.
If this would possible, there would be no need for any configuration of
the printer-profiles in CUPS.
2) generic-printer driver with profile-configuration
----------------------------------------------------
This is a much more complex solution. It would be a generic-printer Uer
Interface, independent from the printertype which is used and
independent from the lowlevel-printing engine e.g. Gutenprint.
The profile configuration is made in this application. This generic
driver delivers the profile to the CUPS and the colormanagement is done
in GhostScript. The lowlevel engine like Gutenprint is only doing
inklimiting and linearization.
For doing such stuff, we have to solve several things:
2a Synchronizing the settings in the generic-driver with the approriate
setting in the lowlevel engine e.g. gutenprint
2b Make it easy to print without colormanagement, if testcharts for
individual profiling should be printed
2c Installer for canned-profiles
We need an installer, which is able to install a bunch of canned
profiles according the settings of the generic printer-driver.
In my view, it seems easier to implement
1) pass through of the document-colorspace to Gutenprint
In both cases we have to invent a pass-through of the
document-colorspace to CUPS, that we need no manual configuration there.
At last I have some questions according Gutenprint:
1) How can the user specify the settings for a printjob, when Gutenprint
is running on a server in the network ?
2) How is this GUI for such a "Gutenprint-client" connected to CUPS ?
3) How far is the implementation of littleCMS in Gutenprint ?
4) How far is the association of profiles and linearization-files in
Gutenprint ?
colorful greetings
:-) Jan-Peter
--
--
homann colormanagement ------ fon/fax +49 30 611 075 18
Jan-Peter Homann ------------- mobile +49 171 54 70 358
Kastanienallee 71 ------- http://www.colormanagement.de
10435 Berlin --------- mailto:homann at colormanagement.de
More information about the openicc
mailing list