使用 Gembox.Spreadsheets 将 .Xlsx 转换为 PDF

Using Gembox.Spreadsheets to convert .Xlsx to PDF

我一直在寻找 Spire.Xls 的免费替代品,它允许我将 .Xlsx 格式转换为 .PDF,到目前为止,Gembox 做得很好。但是,我似乎无法正确缩放比例,据我所知,没有人遇到过同样的问题。我试图将缩放比例设置为原始大小的 93%,边距为 0。但是,我似乎找不到提到这一点的代码文档。它也不在他们的示例文件中。

有使用此 DLL 经验的人知道我应该去哪里找吗?

使用以下内容:

var workbook = ExcelFile.Load("Sample.xlsx");

foreach (var worksheet in workbook.Worksheets)
{
    var printOptions = worksheet.PrintOptions;
    printOptions.LeftMargin =
    printOptions.RightMargin =
    printOptions.TopMargin =
    printOptions.BottomMargin = 0;

    printOptions.AutomaticPageBreakScalingFactor = 93;
}

var saveOptions = new PdfSaveOptions();
saveOptions.SelectionType = SelectionType.EntireFile;

workbook.Save("Sample Output.pdf", saveOptions);

此外,我不确定您为什么要使用 93% 的缩放比例,但如果您想要在单个页面的宽度上实现所有工作表列的拟合,那么您应该改用以下内容:

//printOptions.AutomaticPageBreakScalingFactor = 93;
printOptions.FitWorksheetWidthToPages = 1;