←Select platform

IccColorantTableTagType Class

Summary

Contains the colorantTableType tag type data.

Syntax
C#
VB
C++
public class IccColorantTableTagType : IccTagTypeBase 
  
Public Class IccColorantTableTagType  
   Inherits IccTagTypeBase 
public ref class IccColorantTableTagType : public IccTagTypeBase  

Remarks

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.

C#
VB
using Leadtools; 
using Leadtools.ColorConversion; 
 
public void IccColorantTableTagTypeExample() 
{ 
   // load an Icc Profile 
   string fileName = Path.Combine(LEAD_VARS.ImagesDir, "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 = Path.Combine(LEAD_VARS.ImagesDir, "IccColorantTableTagTypeCS.icc"); 
   iccProfile.GenerateIccFile(IccfileName); 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; 
} 
Imports Leadtools 
Imports Leadtools.ColorConversion 
 
Public Sub IccColorantTableTagTypeExample() 
   ' load an Icc Profile 
   Dim iccProfile As New IccProfileExtended(Path.Combine(LEAD_VARS.ImagesDir, "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(Path.Combine(LEAD_VARS.ImagesDir, "IccColorantTableTagTypeVB.icc")) 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" 
End Class 

Requirements

Target Platforms

Help Version 20.0.2020.3.31
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.ColorConversion Assembly