如何使用EPPlus为A4纸创buildExcel文件

我目前的项目使用EPPlus创buildExcel文件。 这些文件是由用户打印,我试图强制Excel文件打印在只有一个A4页面,无论宽度或内容。

实际上,打印文件时,需要两页,第二页只包含一列。

我的代码:

ws.PrinterSettings.Orientation = eOrientation.Landscape; ws.PrinterSettings.PrintArea = ws.Cells[ws_dimension_adress]; ws.PrinterSettings.TopMargin= 0; ws.PrinterSettings.RightMargin = 0; ws.PrinterSettings.BottomMargin = 0; ws.PrinterSettings.LeftMargin = 0; ws.Cells[ws_dimension_adress].AutoFitColumns(); ws.Cells[ws_dimension_adress].Style.Font.Size = 9; 

结果:我的代码提供的结果

在这里输入图像说明

我需要的:

在这里输入图像说明

我search像“autofit到A4页”的东西,但也没有解决scheme。

备注:所有列都是必需的。 在创build文件之前,我不能简单地删除一个。

感谢您的帮助!

我find了解决scheme。

EPPlus有一个printerSettings为此。 要使用的线是

 ws.PrinterSettings.FitToPage = true; 

通过使用此,默认文件属性强制Excel只在一个页面中打印数据。

希望这可以帮助一些其他的开发者。

您也可以使用这一行代码的特定纸张大小:

 ws.PrinterSettings.PaperSize = ePaperSize.A4; 

这可以帮助其他人。