LEADTOOLS Color Conversion (Leadtools.ColorConversion assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
IccChromaticityTagType Class
See Also  Members  
Leadtools.ColorConversion Namespace : IccChromaticityTagType Class



Contains the chromaticityType tag type data.

Object Model

IccChromaticityTagType ClassIccChromaticity Structure

Syntax

Visual Basic (Declaration) 
Public Class IccChromaticityTagType 
   Inherits IccTagTypeBase
Visual Basic (Usage)Copy Code
Dim instance As IccChromaticityTagType
C# 
public class IccChromaticityTagType : IccTagTypeBase 
C++/CLI 
public ref class IccChromaticityTagType : public IccTagTypeBase 

Example

This example method can be used in creating an "chromaticityType" mentioned in the ICC.1:2004-10 specification. This method fills an IccChromaticity type with the colorant encoding ITU-R BT.709.

Visual BasicCopy Code
Public Sub IccChromaticityTagTypeExample()
      ' load an Icc Profile
      Dim iccProfile As New IccProfileExtended(Path.Combine(LEAD_VARS.ImagesDir, "EmptyIcc.icc"))

      ' define the three channels
      Dim iccChan(2) As IccChannelCoordinates

      ' define the first channel coordinates
      Dim coord(1) As Integer
      coord(0) = IccTools.FromDoubleTo2bFixed2bNumber(0.64)
      coord(1) = IccTools.FromDoubleTo2bFixed2bNumber(0.33)
      iccChan(0) = New IccChannelCoordinates(coord)

      ' define the second channel coordinates
      coord(0) = IccTools.FromDoubleTo2bFixed2bNumber(0.3)
      coord(1) = IccTools.FromDoubleTo2bFixed2bNumber(0.6)
      iccChan(1) = New IccChannelCoordinates(coord)

      ' define the third channel coordinates
      coord(0) = IccTools.FromDoubleTo2bFixed2bNumber(0.15)
      coord(1) = IccTools.FromDoubleTo2bFixed2bNumber(0.06)
      iccChan(2) = New IccChannelCoordinates(coord)

      ' create the IccChomaticity class
      Dim iccChrom As New IccChromaticity(IccColorantsType.ITU_R_BT709, iccChan)

      ' define the tag type
      Dim iccChromTagType As New IccChromaticityTagType(iccChrom)

      ' add the new tag to the ICC Profile
      iccProfile.AddTag(iccChromTagType, IccTag.ChromaticityTag, IccTagTypeBase.ChromaticityTypeSignature)

      ' generate the new profile id
      iccProfile.GenerateProfileId()

      ' update the icc array with the new changes
      iccProfile.UpdateDataArray()

      ' write the Icc Profile into a new file
      iccProfile.GenerateIccFile(Path.Combine(LEAD_VARS.ImagesDir, "IccChromaticityTagTypeVB.icc"))
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
public void IccChromaticityTagTypeExample()
   {
      // load an Icc Profile
      string fileName = Path.Combine(LEAD_VARS.ImagesDir, "EmptyIcc.icc");
      IccProfileExtended iccProfile = new IccProfileExtended(fileName);

      // define the three channels
      IccChannelCoordinates[] iccChan = new IccChannelCoordinates[3];

      // define the first channel coordinates
      int[] coord = new int[2];
      coord[0] = IccTools.FromDoubleTo2bFixed2bNumber(0.640);
      coord[1] = IccTools.FromDoubleTo2bFixed2bNumber(0.330);
      iccChan[0] = new IccChannelCoordinates(coord);

      // define the second channel coordinates
      coord[0] = IccTools.FromDoubleTo2bFixed2bNumber(0.300);
      coord[1] = IccTools.FromDoubleTo2bFixed2bNumber(0.600);
      iccChan[1] = new IccChannelCoordinates(coord);

      // define the third channel coordinates
      coord[0] = IccTools.FromDoubleTo2bFixed2bNumber(0.150);
      coord[1] = IccTools.FromDoubleTo2bFixed2bNumber(0.060);
      iccChan[2] = new IccChannelCoordinates(coord);

      // create the IccChomaticity class
      IccChromaticity iccChrom = new IccChromaticity(IccColorantsType.ITU_R_BT709, iccChan);

      // define the tag type
      IccChromaticityTagType iccChromTagType = new IccChromaticityTagType(iccChrom);

      // add the new tag to the ICC Profile
      iccProfile.AddTag(iccChromTagType, IccTag.ChromaticityTag, IccTagTypeBase.ChromaticityTypeSignature);

      // generate the new profile id
      iccProfile.GenerateProfileId();

      // update the icc array with the new changes
      iccProfile.UpdateDataArray();

      // write the Icc Profile into a new file
      string IccfileName = Path.Combine(LEAD_VARS.ImagesDir, "IccChromaticityTagTypeCS.icc");
      iccProfile.GenerateIccFile(IccfileName);
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
SilverlightVBCopy Code

Remarks

Inheritance Hierarchy

System.Object
   Leadtools.ColorConversion.IccTagTypeBase
      Leadtools.ColorConversion.IccChromaticityTagType

Requirements

Target Platforms: Silverlight 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only)

See Also