SampleICC provides an open source platform independent C++ library for reading, writing, manipulating, and applying ICC profiles along with applications that make use of this library. Some of the applications are platform independent, while others are built using Microsoft Visual Studio. A working knowledge of the ICC specification and color management workflows will aid in understanding the library and its proper usage. The latest ICC profile specification can be found on the ICC website (http://www.color.org). Several useful white papers and resources are also available on the website.

 

Download SampleICC

 

The SampleICC version 1.3.0 archive contains the following subfolders:

 

DocsSampleICC documentation

IccProfLib – SampleICC’s  ICC Profile library.  This library can be used to create/read/write/apply profiles. Note: Click on the link to access the IccProfLib documentation.

LibTiff – This folder should contain the contents of the LibTiff archive found at the LibTiff Web Site.  The LibTiff archive will needed to be downloaded and extracted into this folder separately.  SampleICC works with LibTiff version 3.6.1.

TestProfiles - A place to put profiles for testing.

Tools - This folder contains tools that use IccProfLib.  There are two subfolders :

CmdLine – This folder contains platform independent application subfolders:

IccApplyNamedCmm – Uses CIccNamedColorCmm to apply transforms to colors specified by text files.  Colors can be sample values or color names depending upon profiles used.

IccApplyProfiles – Uses the CIccCmm to apply transforms to tiff images.

IccProfLibTest – An application that was written to test creation of tags in a profile.

IccDumpProfile – Reads a profile and displays the contents.

IccV4ToMPE – Adds MultiProcessingElement Tags using floating point encoding to a V4 Profile.

IccStripUnused – Removes tags that are not supported by the profile specification from a profile.

Winnt – This folder contains applications that can be built using Microsoft Visual Studio.  The BuildAll project workspace in this folder can be used to load and build IccProfLib along with other applications in the SampleIcc archive.

ApplyProfiles – A GUI application that asks for a source tiff file, source profile, destination profile, destination tiff file, and rendering intent.  It then applies the transforms and creates the destination tiff file.

BuildLibTiff – This contains the LibTiff project settings specific to SampleICC (different than those defined in the LibTiff archive) and where LibTiff compiled object files are created.

SampleIccCmm – Creates a DLL that can be used to install a basic CMM in Windows 2000/XP based on IccProfLib.  See SampleICC CMM Read Me.pdf in this folder for details.

wxWidgets – This folder contains applications that are build using the wxWidgets cross platform development framework (http://www.wxWidgets.org).  Default build projects are provided for Windows using Microsoft Visual Studio.  The projects in this folder require wxWidgets version 2.6.2 to be installed and compiled with the WXWIN environment variable properly set up before wxWidgets based projects can be built.

wxProfileDump – A GUI application that allows one to look at the contents of an ICC profile.  Note: ALL tag types in the ICC specification are supported.

Contrib - This folder contains third party tools and libraries that use IccProfLib.  Please see the readme file in this folder for further details.

ICC_Utils – This folder contains a library that is used by applications in the Contrib subfolders.

CmdLine – This folder contains platform independent application subfolders:

create_CLUT_profile – An application that was written to show how to populate a CLUT input profile.

create_display_profile – An application that was written to show how to populate a Matrix/TRC based display profile.

Mac_OS_X – This folder contains Mac OS X applications used to create and read test files used by other tools in the Contrib subfolders.

tests – This folder contains test applications used during development of the applications in the Contrib subfolders.

Winnt – The BuildAllContrib project workspace in this folder can be used to load and build IccProfLib along with all the other applications in the Contrib subfolders.


The ICC Software License, Version 0.1

Copyright © 2003-2007 - The International Color Consortium. All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. The end-user documentation included with the redistribution, if any, must include the following acknowledgment: "This product includes software developed by the The International Color Consortium (www.color.org)" Alternately, this acknowledgment may appear in the software itself, if and wherever such third-party acknowledgments normally appear.

4. In the absence of prior written permission, the names "ICC" and "The International Color Consortium" must not be used to imply that the ICC organization endorses or promotes products derived from this software.

====================================================================
THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE INTERNATIONAL COLOR CONSORTIUM OR
ITS CONTRIBUTING MEMBERS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
====================================================================

This software consists of voluntary contributions made by many individuals on behalf of the The International Color Consortium.

Membership in the ICC is encouraged when this software is used for commercial purposes.

CONTACT

Please send your questions, comments, and or suggestions to forums on the SampleICC project site (http://sourceforge.net/projects/sampleicc/).