using System; using System.Collections.Generic; using System.Text; using System.IO; namespace HH.WMS.Utils.ExcelLibrary.BinaryFileFormat { /// /// This record contains the definition of all user-defined colours available for cell and object formatting. /// public partial class PALETTE : Record { public PALETTE(Record record) : base(record) { } public PALETTE() { this.Type = RecordType.PALETTE; this.Colors = new List(); } /// /// Number of following colours. /// public Int16 NumColors; /// /// List of RGB colours. /// public List Colors; public override void Decode() { MemoryStream stream = new MemoryStream(Data); BinaryReader reader = new BinaryReader(stream); this.NumColors = reader.ReadInt16(); int count = this.NumColors; this.Colors = new List(count); for (int i = 0; i < count; i++) { Colors.Add(reader.ReadInt32()); } } public override void Encode() { MemoryStream stream = new MemoryStream(); BinaryWriter writer = new BinaryWriter(stream); writer.Write(NumColors); foreach(Int32 int32Var in Colors) { writer.Write(int32Var); } this.Data = stream.ToArray(); this.Size = (UInt16)Data.Length; base.Encode(); } } }