public struct IccTag public value class IccTag : public System.ValueType class IccTag: using Leadtools;using Leadtools.ColorConversion;public void IccProfileExtendedConstructorExample(){// load an Icc Profilestring IccfileName = Path.Combine(LEAD_VARS.ImagesDir, "test_IccProfileExtendedCS.icc");IccProfileExtended iccProfile = new IccProfileExtended(IccfileName);// create the new headerIccHeader header = IccHeader.Empty;header.CmmID = 0x6170706C; // any CMM IDheader.DeviceClass = IccProfileClassType.DeviceLinkClass;header.ColorSpace = IccColorspaceType.LabData;header.Pcs = IccColorspaceType.LabData;header.ProfileSignature = 0x61637370; // any profile signatureheader.Platform = IccPlatformSignatureType.MacintoshSignature;header.Flags = IccProfileFlags.None;header.Manufacturer = 0x46464549; // any manufacturerheader.Model = 0x0; // any modelheader.Attributes = IccProfileMediaFlags.ColorMedia;header.RenderingIntent = IccRenderingIntentType.AbsoluteColorimetric;header.Creator = 0x46464549; // any creator// set the system date/time as the date/time of the Icc ProfileSystem.DateTime sysDateTime = System.DateTime.Now;IccDateTime iccDateTime = new IccDateTime((ushort)sysDateTime.Year,(ushort)sysDateTime.Month,(ushort)sysDateTime.Day,(ushort)sysDateTime.Hour,(ushort)sysDateTime.Minute,(ushort)sysDateTime.Second);header.DateTime = iccDateTime;// copy the tag listint counter, numberOfTags;numberOfTags = iccProfile.TagList.Tags.Length;IccTag[] tags = new IccTag[numberOfTags];for (counter = 0; counter < numberOfTags; counter++){tags[counter] = new IccTag(iccProfile.TagList.Tags[counter].Signature,iccProfile.TagList.Tags[counter].Offset,iccProfile.TagList.Tags[counter].Size);}IccTagList tagList = new IccTagList(tags);// copy the tag databyte[] tagData = new byte[iccProfile.TagData.Length];iccProfile.TagData.CopyTo(tagData, 0);// create the new ICC profile, the Data array parameter will not be passed, because it will be// updated when calling UpdateDataArray() method.IccProfileExtended newIccProfile = new IccProfileExtended(header, tagList, tagData, null);// generate the profileId. For the time being, it will be filled with 0'snewIccProfile.GenerateProfileId();// finally generate the new Icc Profile by updating the Data Array// and then generating the filenewIccProfile.UpdateDataArray();string IccExtfile = Path.Combine(LEAD_VARS.ImagesDir, "IccProfileExtendedConstructorCS.icc");newIccProfile.GenerateIccFile(IccExtfile);}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
