繁体   English   中英

使用C#和OpenXML将缩放属性设置为适合Excel

[英]Set scaling property to fit to in Excel using C# with OpenXML

我创建了一个创建Excel工作簿的asp.net页面。 我已设置页面设​​置高度和工作簿宽度的方向缩放属性,如下所示:

DocumentFormat.OpenXml.Spreadsheet.PageSetup pgOr = new DocumentFormat.OpenXml.Spreadsheet.PageSetup();
    pgOr.Orientation = OrientationValues.Landscape;
    pgOr.FitToHeight = 3;
    pgOr.FitToWidth = 1;
    newWorksheetPart.Worksheet.AppendChild(pgOr);

但是,当您下载Excel文档并打开PageSetup时,缩放设置为1页宽,3页高,这是我想要的,但未选择“适合”单选按钮,因此它实际上并未使用这些设置。

我想在途中我需要设置一些属性为true。 就像FitToPage或其他东西一样,我不知道哪一个。 谁知道?

注意:请记住我使用的是DocumentFormat.OpenXml而不是Microsoft.Office.Interop.Excel。

OpenXML SDK提供了一个名为PageSetupProperties的类,它提供了一个名为FitToPage的属性。 将此属性设置为true以便选择单选按钮:

SheetProperties sp = new SheetProperties(new PageSetupProperties());

Worksheet ws = newWorksheetPart.Worksheet;
ws.SheetProperties = sp;

// Set the FitToPage property to true
ws.SheetProperties.PageSetupProperties.FitToPage = BooleanValue.FromBoolean(true);

DocumentFormat.OpenXml.Spreadsheet.PageSetup pgOr = new DocumentFormat.OpenXml.Spreadsheet.PageSetup();
pgOr.Orientation = DocumentFormat.OpenXml.Spreadsheet.OrientationValues.Landscape;
pgOr.FitToHeight = 3;
pgOr.FitToWidth = 1;
ws.AppendChild(pgOr);

必须设置FitToPage,xml代码见下:

sheet1.xml
...
<sheetPr>
    <pageSetUpPr fitToPage="1"/>
</sheetPr>
...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM