/// <summary> Construct a header from a complete ICCProfile</summary> /// <param name="byte">[] -- holds ICCProfile contents /// </param> public ICCProfileHeader(byte[] data) { dwProfileSize = ICCProfile.getInt(data, offProfileSize); dwCMMTypeSignature = ICCProfile.getInt(data, offCMMTypeSignature); dwProfileClass = ICCProfile.getInt(data, offProfileClass); dwColorSpaceType = ICCProfile.getInt(data, offColorSpaceType); dwPCSType = ICCProfile.getInt(data, offPCSType); dwProfileSignature = ICCProfile.getInt(data, offProfileSignature); dwPlatformSignature = ICCProfile.getInt(data, offPlatformSignature); dwCMMFlags = ICCProfile.getInt(data, offCMMFlags); dwDeviceManufacturer = ICCProfile.getInt(data, offDeviceManufacturer); dwDeviceModel = ICCProfile.getInt(data, offDeviceModel); dwDeviceAttributes1 = ICCProfile.getInt(data, offDeviceAttributesReserved); dwDeviceAttributesReserved = ICCProfile.getInt(data, offDeviceAttributesReserved); dwRenderingIntent = ICCProfile.getInt(data, offRenderingIntent); dwCreatorSig = ICCProfile.getInt(data, offCreatorSig); profileVersion = ICCProfile.getICCProfileVersion(data, offProfileVersion); dateTime = ICCProfile.getICCDateTime(data, offDateTime); PCSIlluminant = ICCProfile.getXYZNumber(data, offPCSIlluminant); for (int i = 0; i < reserved.Length; ++i) { reserved[i] = data[offReserved + i]; } }
/// <summary> Construct this tag from its constituant parts</summary> /// <param name="signature">tag id</param> /// <param name="data">array of bytes</param> /// <param name="offset">to data in the data array</param> /// <param name="length">of data in the data array</param> protected internal ICCViewType(int signature, byte[] data, int offset, int length) : base(signature, data, offset, offset + 2 * ICCProfile.int_size) { type = ICCProfile.getInt(data, offset); reserved = ICCProfile.getInt(data, offset + ICCProfile.int_size); CIEilluminant = ICCProfile.getXYZNumber(data, offset + ICCProfile.int_size); CIEsurround = ICCProfile.getXYZNumber(data, offset + (ICCProfile.int_size*3)); illuminant = ICCProfile.getInt(data, offset + (ICCProfile.int_size * 3)); }
/// <summary> Construct this tag from its constituant parts</summary> /// <param name="signature">tag id</param> /// <param name="data">array of bytes</param> /// <param name="offset">to data in the data array</param> /// <param name="length">of data in the data array</param> protected internal ICCMeasurementType(int signature, byte[] data, int offset, int length) : base(signature, data, offset, offset + 2 * ICCProfile.int_size) { type = ICCProfile.getInt(data, offset); reserved = ICCProfile.getInt(data, offset + ICCProfile.int_size); observer = ICCProfile.getInt(data, offset + ICCProfile.int_size); backing = ICCProfile.getXYZNumber(data, offset + ICCProfile.int_size); geometry = ICCProfile.getInt(data, offset + (ICCProfile.int_size*3)); flare = ICCProfile.getInt(data, offset + ICCProfile.int_size); illuminant = ICCProfile.getInt(data, offset + ICCProfile.int_size); }
/// <summary> Construct a header from a complete ICCProfile</summary> /// <param name="byte">[] -- holds ICCProfile contents /// </param> public ICCProfileHeader(byte[] data) { dwProfileSize = ICCProfile.getInt(data, offProfileSize); dwCMMTypeSignature = ICCProfile.getInt(data, offCMMTypeSignature); dwProfileClass = ICCProfile.getInt(data, offProfileClass); dwColorSpaceType = ICCProfile.getInt(data, offColorSpaceType); dwPCSType = ICCProfile.getInt(data, offPCSType); dwProfileSignature = ICCProfile.getInt(data, offProfileSignature); dwPlatformSignature = ICCProfile.getInt(data, offPlatformSignature); dwCMMFlags = ICCProfile.getInt(data, offCMMFlags); dwDeviceManufacturer = ICCProfile.getInt(data, offDeviceManufacturer); dwDeviceModel = ICCProfile.getInt(data, offDeviceModel); dwDeviceAttributes1 = ICCProfile.getInt(data, offDeviceAttributesReserved); dwDeviceAttributesReserved = ICCProfile.getInt(data, offDeviceAttributesReserved); dwRenderingIntent = ICCProfile.getInt(data, offRenderingIntent); dwCreatorSig = ICCProfile.getInt(data, offCreatorSig); profileVersion = ICCProfile.getICCProfileVersion(data, offProfileVersion); dateTime = ICCProfile.getICCDateTime(data, offDateTime); PCSIlluminant = ICCProfile.getXYZNumber(data, offPCSIlluminant); for (int i = 0; i < reserved.Length; ++i) reserved[i] = data[offReserved + i]; }