01 March 2012

How To Print With CMYK Color Profile In Linux (Ubuntu)

Without Internet Connection, driver download will be failed. But this is the trick to let the system uses Gutenprint driver :D

Printer Canon PIXUS iP2700 was recognized and Gutenprint has already had the driver

Configuration done !

Now, in printer properties, we will get (generic) CMYK color profile

In digital media, there are two main color profile to arrange colored images/objects. First, RGB (Red-Green-Blue) color profile, used in monitors, and televisions. Also, RGB color profile is used in digital cameras to capture photos. And second, CMYK color profile, used in publishing industry to print medias (magazine, newspaper etc).

What are the advantages and disadvantages of each? Simply, as an end user view, we could say, printing medias with CMYK color profile, will result more bright, smooth, and real --as real as the reality. We could make comparison between printing medias in RGB and CMYK color profile, and we could see, printing medias in RGB color profile results more dark and blurred pictures.

In publishing industry, we maybe know that Macintosh (now, branded as Mac OS X) machines is very popular. But why does that OS become so popular in publishing industry? The answer is, Macintosh uses CMYK color profile as default to print medias, and also, uses CMYK color profile in its monitor (Macbooks, Mac PCs).

In Linux, if we realize, there is RGB color profile that used as default color profile to perform desktop appearance and also used RGB color profile as default profile to print medias. And then, is there any way to print media in Linux using CMYK color profile? The answer is Yes, there are.

Here are the ways to print media in Linux in CMYK color profile :

First, we could use a professional tool called TurboPrint. It is a set of complete printer driver in Linux, with a professional tool in printing. But, it is not a FOSS software. It's proprietary and you must purchase to use this tool. But, the good news is, you could use its 30 days shareware version and you will get a complete set of professional printing. You can visit its homepage here.

Second, we could use Gutenprint. Just like TurboPrint, it is a set of generic printer driver that built by FOSS community. Although Gutenprint doesn't have additional professional tools in printing (such as GUI control panel to control brightnesses, head cleaning etc), it offers complete set of printing profiles (includes CMYK color printing).

Now, how to configure our printer in Linux, by using Gutenprint, and so we could print medias in CMYK color profile? Here is the ways :

1. Login into Ubuntu Linux and choose Unity or Unity-2D desktop. Why is it necessary? Because, since Ubuntu 11.10, Ubuntu has made complex configuration, that affects, we only could get full desktop functionality if we use Unity/Unity-2D desktop. So, even though we dislike Unity, it is wise for us to don't remove Unity as a “recovery” desktop.

2. DO NOT CONNECT TO THE INTERNET. If you have Internet connection, unplug.

3. Plug our printer in, and switch it on. Wait and we will get notification, that there is no driver for our printer, but recognized by the system.

4. Go to System Settings (appears in Unity Launcher), and select Printers.

5. Select Add, and then, we will see our printer has already been recognized. Just click Forward, and wait for driver downloading process. Because we ain't connected to the Internet, there will appear an error message : “Downloading package indexes failed, please check your network status. Most drivers will not be available”. Just leave the message, and select Forward.

6. Next, there is a list of Printers, and our Printer brand is recognized. Just select it, and Forward. Then, we will get our printer be configured and there is a notification “Would you like to print a test page?”. Click Print Test Page if you wish, and Cancel if not.

7. Go to LibreOffice and try to print an image. Go to Print dialog by hitting Ctrl+P, and then select Properties>Device>Color Model. We will see some color profiles includes CMYK.


If we have had our printer been configured before, we could just easily edit our printer driver and add some line to put color profile configuration.

1. The most important thing in editing file configuration in Linux is, You must backup it first. So if our configuration ain't success, we could easily restore the file. To backup our printer driver, open terminal and type this :

dir /etc/cups/ppd

There will appear a our_printer_name.ppd

Then, copy it to the Home by cp /etc/cups/ppd/our_printer_name.ppd ~/

2. Then, edit our printer driver by sudo gedit /etc/cups/ppd/our_printer_name.ppd and add these lines (carefully) :

*ColorKeyWords: "ColorModel"

*OpenUI *ColorModel/Color Model: PickOne

*OPOptionHints ColorModel: "radiobuttons"

*OrderDependency: 10 AnySetup *ColorModel

*DefaultColorModel: RGB

*StpDefaultColorModel: RGB

*ColorModel Gray/Grayscale: "<>setpagedevice"

*ColorModel Black/Inverted Grayscale: "<>setpagedevice"

*ColorModel RGB/RGB Color: "<>setpagedevice"

*ColorModel CMY/CMY Color: "<>setpagedevice"

*ColorModel CMYK/CMYK: "<>setpagedevice"

*ColorModel KCMY/KCMY: "<>setpagedevice"

*CloseUI: *ColorModel

3. Save and exit.

4. Open LibreOffice, and Print any images. Go to printer properties, and there will appear color model choice.

5. But, if this modification doesn't affect or even make our printer doesn't work, just restore our old printer home by :

sudo cp /home/ourname/our_printer_name.ppd /etc/cups/ppd

To make our printer driver readable by CUPS, change the permission file by :

sudo chmod 777 /etc/cups/ppd/our_printer_name.ppd

Happy Linuxing ! :D

Technical Comparison :

System : Ubuntu 11.10

Gutenprint version : cups-driver-gutenprint 5.2.7-2ubuntu4

Printer : Canon PIXUS iP2700

This way was done in Ubuntu Linux 11.10, if you’re using another distros, please give us reports. Does this way work in another distro, or not?

No comments: