I introduced how PDF Color works in a previous article. There are lots of different types of Colorspaces to suit all occasions. One of the more complex and powerful Colorspaces is the ICC Colorspace which deserves more explanation.
ICCBased colorspace allow the user to include a file in the PDF (a profile) defining the Colorspace values according to standards laid down by the International Color Consortium (ICC). There are several versions of the ICC standard and the level of supported has been updated in PDF version revisions. Here is how it appears inside a PDF file. The ICC profile is in the stream data.
70 0 obj[/ICCBased 91 0 R] 91 0 obj<< /Alternate/DeviceGray /Length 2905 /N 1 /Filter/FlateDecode>> stream
The only problem with ICCBased colorspaces is that not all PDF tools may support the ICCBased so you can specify an Alternate colorspace to use (/DeviceGray in the example above). Using the Alternate colorspace will result in an approximation which is often identical to using the ICCBased value (and it can be a lot faster!).
ICCBased colorspaces can have 1, 3 or 4 components (defined by the N dictionary value. So they often use Gray (1 component), RGB (3 components) or CMYK (4 components). So these are common values for Alternate values.
This combination of power, flexibility and alternatives makes ICCBased colorspaces very useful to use in PDF files. Are you making full use of them?
Our software libraries allow you to
Convert PDF files to HTML |
Use PDF Forms in a web browser |
Convert PDF Documents to an image |
Work with PDF Documents in Java |
Read and write HEIC and other Image formats in Java |
Thank you, but too little information.
What should i do to add ICCBased color space ?
In Pdf specification there is some ICC profile stream and i don’t understand where it comes from.
Could you please explain ?
ICC is a standard specification. You can read up more details on http://en.wikipedia.org/wiki/ICC_profile and http://www.color.org/index.xalter