1

使用 Access 2007 SP3,我有一个报告。打印到打印机并在打印预览中,报告看起来很好。在边距内,正确的输出,没有额外的页面......一切都很好。

将相同的报告输出到 PDF 时,报告显示为缩放,内容被剪裁。没有额外的页面被打印,好像我已经超出了页边距。这是我正在使用的代码:

DoCmd.OpenReport rptName, acViewPreview
DoCmd.OutputTo acOutputReport, "", acFormatPDF, PDFFileName, False
DoCmd.Close acReport, rptName

报表首先在预览模式下打开,因此页面事件会触发以根据提供报表的记录集中的字段来显示/隐藏对象。

我在 OutputTo 调用中尝试了屏幕质量和打印质量参数,结果相同。此外,即使我在一行上调用 OutputTo 并且事件没有触发,报告仍然被缩放/剪辑,它只是没有隐藏所有额外的对象。

我已经在两台不同的机器上进行了尝试,一台运行 Windows 7,一台运行 Windows Server 2008。

即使在 OutputTo 行上设置断点,预览看起来也很好……这是生成的 PDF 文件看起来不正确。

4

2 回答 2

0

我遇到了同样的问题,但它是随机的。如果我重新启动计算机,通常会自行纠正,但上次不是;仍然缩放/剪辑文档。果然,我发现“适合页面”属性设置为“否”。更改为是,并解决了问题。我仍然不确定为什么它有时会起作用而不是其他的。

于 2013-12-16T13:01:46.957 回答
0

我能想到的唯一的事情是:

尝试直接保存报告,而不先打开它,因此只需将 3 行替换为DoCmd一行:

   DoCmd.OutputTo acOutputReport, rptName, acFormatPDF, PDFFileName, False

还要确保您的报告适合页面,并且其属性允许重新缩放。
例如,这是我用于直接保存为 PDF 的报告的设置,与上述相同DoCmd.OutputTo

报告属性

于 2013-08-27T01:18:52.170 回答