iccwrite

Write ICC color profile to disk file

Syntax

P_new = iccwrite(P, filename)

Description

P_new = iccwrite(P, filename) writes the International Color Consortium (ICC) color profile data in structure P to the file specified by filename.

P is a structure representing an ICC profile in the data format returned by iccread and used by makecform and applycform to compute color-space transformations. P must contain all the tags and fields required by the ICC profile specification. Some fields may be inconsistent, however, because of interactive changes to the structure. For instance, the tag table may not be correct because tags may have been added, deleted, or modified since the tag table was constructed. iccwrite makes any necessary corrections to the profile structure before writing it to the file and returns this corrected structure in P_new.

    Note   Because some applications use the profile description string in the ICC profile to present choices to users, the ICC recommends modifying the profile description string in the ICC profile data before writing the data to a file. Each profile should have a unique description string. For more information, see the example.

iccwrite can write the color profile data using either Version 2 (ICC.1:2001-04) or Version 4 (ICC.1:2001-12) of the ICC specification, depending on the value of the Version field in the file profile header. If any required fields are missing, iccwrite errors. For more information about ICC profiles, visit the ICC web site, www.color.org.

    Note   iccwrite does not perform automatic conversions from one version of the ICC specification to another. Such conversions have to be done manually, by adding fields or modifying fields. Use isicc to validate a profile.

Examples

Read a profile into the MATLAB® workspace and export the profile data to a new file. The example changes the profile description string in the profile data before writing the data to a file.

P = iccread('monitor.icm');

P.Description.String

ans =

sgC4_050102_d50.pf

P.Description.String = 'my new description';

pmon = iccwrite(P, 'monitor2.icm');
Was this topic helpful?