internal void WriteClut8(byte[] expected, IccClut data, int inChannelCount, int outChannelCount, byte[] gridPointCount) { IccDataWriter writer = this.CreateWriter(); writer.WriteClut8(data); byte[] output = writer.GetData(); Assert.Equal(expected, output); }
internal void WriteClutAll(byte[] expected, IccClut data, int inChannelCount, int outChannelCount, bool isFloat) { using IccDataWriter writer = CreateWriter(); writer.WriteClut(data); byte[] output = writer.GetData(); Assert.Equal(expected, output); }
/// <summary> /// Writes a 16bit color lookup table /// </summary> /// <param name="value">The CLUT to write</param> /// <returns>The number of bytes written</returns> public int WriteClut16(IccClut value) { int count = 0; foreach (float[] inArray in value.Values) { foreach (float item in inArray) { count += this.WriteUInt16((ushort)Numerics.Clamp((item * ushort.MaxValue) + 0.5F, 0, ushort.MaxValue)); } } return(count); }
/// <summary> /// Writes a 8bit color lookup table /// </summary> /// <param name="value">The CLUT to write</param> /// <returns>The number of bytes written</returns> public int WriteClut8(IccClut value) { int count = 0; foreach (float[] inArray in value.Values) { foreach (float item in inArray) { count += this.WriteByte((byte)Numerics.Clamp((item * byte.MaxValue) + 0.5F, 0, byte.MaxValue)); } } return(count); }
/// <summary> /// Writes a 32bit float color lookup table /// </summary> /// <param name="value">The CLUT to write</param> /// <returns>The number of bytes written</returns> public int WriteClutF32(IccClut value) { int count = 0; foreach (float[] inArray in value.Values) { foreach (float item in inArray) { count += this.WriteSingle(item); } } return(count); }