Leadtools.ColorConversion Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
IccColorantTableTagType Class
See Also  Members   Example 
Leadtools.ColorConversion Namespace : IccColorantTableTagType Class



Contains the colorantTableType tag type data.

Object Model


Syntax

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

Example

This example method can be used in creating an "colorantTableType" mentioned in the ICC.1:2004-10 specification. This method fills only one color of an IccColorantTableTagType. To fill more than one color, a loop should be used as needed.

Visual BasicCopy Code
Public Sub IccColorantTableTagTypeExample()
   ' load an Icc Profile
   Dim iccProfile As New IccProfileExtended(LeadtoolsExamples.Common.ImagesPath.Path + "EmptyIcc.icc")

   ' we will have 3 colorants
   ' define the first colorant name and value
   Dim colorantName1 As String = "Luminance"
   Dim pcsValues1() As UShort = {1, 0, 0}

   ' define the second colorant name and value
   Dim colorantName2 As String = "A"
   Dim pcsValues2() As UShort = {0, 1, 0}

   ' define the third colorant name and value
   Dim colorantName3 As String = "B"
   Dim pcsValues3() As UShort = {0, 0, 1}

   ' define one color in the colorant table & create a new ColorantTable type
   Dim iccColorantTable() As IccColorantTableData = { _
      New IccColorantTableData(Encoding.ASCII.GetBytes(colorantName1), pcsValues1), _
      New IccColorantTableData(Encoding.ASCII.GetBytes(colorantName2), pcsValues2), _
      New IccColorantTableData(Encoding.ASCII.GetBytes(colorantName3), pcsValues3)}

   ' define the tag type
   Dim iccColorantTableTagType As New IccColorantTableTagType(iccColorantTable)

   ' add the new tag to the ICC Profile
   iccProfile.AddTag(iccColorantTableTagType, IccTag.ColorantTableTag, IccTagTypeBase.ColorantTableTypeSignature)

   ' 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(LeadtoolsExamples.Common.ImagesPath.Path + "IccColorantTableTagTypeVB.icc")
End Sub
C#Copy Code
public void IccColorantTableTagTypeExample() 

   // load an Icc Profile 
   string fileName = LeadtoolsExamples.Common.ImagesPath.Path + "EmptyIcc.icc"; 
   IccProfileExtended iccProfile = new IccProfileExtended(fileName); 
 
   // we will have 3 colorants 
   // define the first colorant name and value 
   string colorantName1 = "Luminance"; 
   ushort[] pcsValues1 = new ushort[3] { 1, 0, 0 }; 
 
   // define the second colorant name and value 
   string colorantName2 = "A"; 
   ushort[] pcsValues2 = new ushort[3] { 0, 1, 0 }; 
 
   // define the third colorant name and value 
   string colorantName3 = "B"; 
   ushort[] pcsValues3 = new ushort[3] { 0, 0, 1 }; 
 
   // define one color in the colorant table 
   IccColorantTableData[] iccColorantTable = new IccColorantTableData[3]; 
 
   // create a new ColorantTable type 
   iccColorantTable[0] = new IccColorantTableData(Encoding.ASCII.GetBytes(colorantName1), pcsValues1); 
   iccColorantTable[1] = new IccColorantTableData(Encoding.ASCII.GetBytes(colorantName2), pcsValues2); 
   iccColorantTable[2] = new IccColorantTableData(Encoding.ASCII.GetBytes(colorantName3), pcsValues3); 
 
   // define the tag type 
   IccColorantTableTagType iccColorantTableTagType = new IccColorantTableTagType(iccColorantTable); 
 
   // add the new tag to the ICC Profile 
   iccProfile.AddTag(iccColorantTableTagType, IccTag.ColorantTableTag, IccTagTypeBase.ColorantTableTypeSignature); 
 
   // 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 = LeadtoolsExamples.Common.ImagesPath.Path + "IccColorantTableTagTypeCS.icc"; 
   iccProfile.GenerateIccFile(IccfileName); 
}

Remarks

Inheritance Hierarchy

System.Object
   Leadtools.ColorConversion.IccTagTypeBase
      Leadtools.ColorConversion.IccColorantTableTagType

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family

See Also