使用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文件看起来不正确。
答案 0 :(得分:0)
我唯一能想到的是:
尝试直接保存报告,而不先打开报告,因此只需将3行DoCmd
替换为一行:
DoCmd.OutputTo acOutputReport, rptName, acFormatPDF, PDFFileName, False
还要确保您的报告适合页面,并确保其属性允许重新调整
例如,以下是我用于报告的设置,我使用与上述相同的DoCmd.OutputTo
直接保存为PDF。
答案 1 :(得分:0)
我遇到了同样的问题,但这是随机的。如果我重新启动计算机,通常会自行更正,但不是最后一次;仍然缩放/剪裁文档。果然,我找到了#34; Fit to Page"财产被设定为" NO"。改为是,并修复了问题。我还不确定为什么它有时会起作用,而不是其他人。