using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; using Biff8Excel.Interfaces; namespace Biff8Excel.Records { [StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Auto, Pack = 1)] struct RecordSetup { public ushort opcode; public ushort length; public ushort pagesize; public ushort scalefactor; public ushort startpage; public ushort fitwide; public ushort fithigh; public ushort options; public ushort horizdpi; public ushort vertdpi; public double headermargin; public double footermargin; public ushort copies; } internal class Setup : IRecords { RecordSetup setup; public Setup() { setup.opcode = 0xA1; setup.length = 34; } public ushort PaperSize { set { setup.pagesize = value; } } public ushort ScaleFactor { set { setup.scalefactor = value; } } public ushort StartPage { set { setup.startpage = value; } } public ushort FitPagesWide { set { setup.fitwide = value; } } public ushort FitPagesHigh { set { setup.fithigh = value; } } public ushort OptionFlags { set { setup.options = value; } } public ushort HorizontalDpi { set { setup.horizdpi = value; } } public ushort VerticalDpi { set { setup.vertdpi = value; } } public double HeaderMargin { set { setup.headermargin = value; } } public double FooterMargin { set { setup.footermargin = value; } } public ushort Copies { set { setup.copies = value; } } #region IRecords ³ΙΤ± public byte[] GetByte() { return Globals.GetStructToBytes(setup); } #endregion } }