2014-01-09 9 views
6

Ich muss die Ränder (Druckereinstellungen) einer Excel-Arbeitsmappe programmgesteuert festlegen können.
fand ich diese Datei:So legen Sie Excel-Ränder mit EPPlus fest

ExcelPrinterSettings.cs

Es gibt eine Klasse mit folgenden Konstruktor:

ExcelPrinterSettings(XmlNamespaceManager ns, 
    XmlNode topNode,ExcelWorksheet ws) 

aber ich weiß nicht, was ich für die ersten beiden Parameter übergeben in sollte.
Ich hatte bereits Code, der ein Arbeitsblatt erstellt, also kann ich das als 3. Parameter übergeben.

Vielen Dank für Anregungen.

Antwort

11

I epplus mit diesem Code für Satz Druckereinstellungen in Ziel verwenden Excel-Datei:

ExcelWorksheet ew; 
ew.PrinterSettings.TopMargin = tartetTopMarginValueInCm/2.54M; 
ew.PrinterSettings.RightMargin = targetRightMarginValueInCm/2.54M; 
... 
ew.PrinterSettings.HeaderMargin = targetHeaderMarginInCm/2.54M; 

nicht cm Vergessen Sie Umwandlung in Zoll (wenn Sie möchten cm verwenden, da alle epplus Druckereinstellungen Werte in Zoll sind).

Bildschirm mit Seite einrichten in Excel vs. Printer in Epplus:

Page setup in excel vs. epplus settings

+0

Vielen Dank. Ich habe es bereits herausgefunden, wegen Code-Vervollständigung/Intellisense. Und es scheint tatsächlich zu funktionieren. Ich habe ExcelPrinterSettings.cs überhaupt nicht verwendet. – user2943111

2

gleiche wie oben mit kleinen Anpassungen (funktioniert 100%)

ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Demo"); 

ws.PrinterSettings.TopMargin =(decimal).5/2.54M; // narrow border 
ws.PrinterSettings.RightMargin = (decimal).5/2.54M; //narrow border 
Verwandte Themen