如何使用 EPPlus 为 A4 纸创建 Excel 文件

How to create Excel file with EPPlus for A4 paper

我当前的项目使用 EPPlus 创建 Excel 文件。这些文件由用户打印,我试图强制 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;

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

我需要的:

我搜索了 "autofit to A4 page" 之类的东西,但还没有解决方案。

备注:所有栏目都需要。我不能在创建文件之前简单地删除一个。

感谢您的帮助!

我找到了解决方案。

EPPlus 有一个打印机设置。 要使用的行是

ws.PrinterSettings.FitToPage = true;

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

希望这对其他开发者有所帮助。

您也可以将这行代码用于特定的纸张尺寸:

ws.PrinterSettings.PaperSize = ePaperSize.A4;

希望这可以帮助其他人。