[cups] Color profiles with CUPS?

Axel Braun axel.braun at gmx.de
Sun Dec 25 04:05:12 PST 2016


Hello Helge,

Am Samstag, 24. Dezember 2016, 21:07:09 CET schrieb Helge Blischke:
 
what I understand from your explanations is that there is no easy way to just 
drop the profile to a cups path and it is being picked up....

> On Linux, the cups-filters package (which is said to be mandatory when using
> a cups version
> >= 1.6.x) provides – limited – support for ICC profiles:
> –	The profiles *must* be installed and maintained by the colord daemon
> (which in turn usually is accessed using the dbus interface). There is a
> single command line utility, colormgr, to install, delete, repair etc. ICC
> profiles.

Or, more convenient, use a frontend-tool like colord-kde or colord-gtk

> 	The colord configuration (the colord.conf file) specifies where the
> profiles are stored.
 
> –	The pstoraster, pdftoraster, and gstoraster filters from the mentioned
> package provide the use of ICC profiles for the respective print jobs. They
> retrieve the profile files either viea the *cupsICCProfile keyword and
> friends or, if these are not present in the printer’s PPD, via the dbus API
> from colord.
> 
> –	The rastertopdf filter from the mentioned package is said to support to
> generate ICC-based color spaces in the generated PDF (information from the
> README file), but as I haven’t got time to dig through the sources of this
> filter, it is not obvious to me how this really works.
> 
> As for printers that speak some other PDL than cups-raster or pwg-raster
> like PostScript, a PCL dialect, XPS or some proprietary PDL, there is no
> ICC profile support by cups; instead I know from a variety of proprietary
> ICC implementation in the printer’s firmware which are mostly undocumented
> (I happen to know very few of them in detail).
> But, at least for printers that speak PostScript (at least language level 2)
> and conform to what Adobe published in the respective PLRM, ICC profile
> support could be implemented using PS CRDs (Color Rendering Dictionaries)
> using the utilities of the lcms2 (little cms) package, which is part of all
> Linux distros I know of.

Indeed, and they are installed automatically when you install one of the above 
frontends.
As Postscript is probably still the most important printer language - at least 
for GNU/Linux-users PS more or less grants compatibility - your last paragraph 
seems to give the solution. I could see that lcms2 is installed on my system, 
colord is running, and profile seems to be set-up correctly:

T520:/home/docb # colormgr get-devices
Objektpfad:    /org/freedesktop/ColorManager/devices/cups_MFC9340CDW
Besitzer:      root
Angelegt:      24.Dezember.2016, 09:26:02
Geändert:     24.Dezember.2016, 09:26:02
Typ:           printer
Aktiviert:     Yes
Eingebettet:   No
Modell:        Brother MFC-9340CDW
Hersteller:    Brother
Seriennummer:  socket://192.168.2.103
Format:        ColorSpace.MediaType.Resolution
Geltungsbereich:temp
Farbraum:      rgb
Gerätekennung:cups-MFC9340CDW
Profil 1:      icc-77d80299db8376649ab2ee910a2a08ab
               /usr/share/color/icc/BrotherMFC9340CDW_Kopierpapier.icm
Profil 2:      MFC9340CDW-RGB..
Profil 3:      MFC9340CDW-Gray..
Metadaten:     OwnerCmdline=/usr/sbin/cupsd -f 

Is there a way to check this - except from a printout?

Cheers
Axel



More information about the cups mailing list