如何将页面大小A0添加到Microsoft XPS Document Writer?

在我的C#代码写入:

excelWorkbook.ExportAsFixedFormat(Microsoft.Office.Interop.Excel.XlFixedFormatType.xlTypePDF, Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\" + output) 

它在A4中生成pdf文件,而不是在A0中。 我必须手动添加页面大小A0到Microsoft XPS文档编写器,但它如何在C#中工作?

A4意味着210×297毫米A0意味着841×1189毫米

macros是你的朋友在这里。 根据您使用的Excel版本,在录制新macros时,首先用正确的打印设置直观地格式化源文档。 查看生成的VBA,以了解要设置哪些PrintSettings属性。

使用Excel手动导出以确保它添加了您所需的A0大小。 如果是这样,那么只需将VBA代码移植到您的C#应用​​程序。

编辑:

在Excel中手动设置打印属性涉及诸如设置页面方向,打印页边距,纸张大小等。如果遇到在Excel对象模型中无法触及的对象,则可以始终在C#中使用预先格式化的模板。 打开模板,添加数据,然后导出。

录制macros是快速发现Office对象模型的一种非常强大的方法。 在较新版本的Excel中,我相信您需要通过File > Options > Customize Ribbon > Developer Checkbox显式启用开发人员工具栏。