我已经在网上查找了一段时间了,但我仍然没有弄清楚如何在 Delphi 中打印 PDF 文件而不显示文档本身或打印对话框。我只想打开一个文件而不显示它,并将其打印到默认打印机。
我正在尝试打印一批PDF文档,并且不需要用户干预。
最佳答案
打印 PDF 有一些不同的可能性...这取决于您是否可以要求安装 Adobe Reader(我不知道您是否想分发您的工具或只是自己使用它)。
1) 可以加载Adobe Reader的ActiveX控件并使用它进行打印
pdfFile.src := 'filename.pdf';
pdfFile.LoadFile('filename.pdf');
pdfFile.print;
2) 您可以使用 Adobe Reader 本身打印 PDF(也可以使用 FoxIt 完成)
ShellExecute(0, 'open', 'acrord32', PChar('/p /h ' + FileName), nil, SW_HIDE);
3) 您还可以使用 Ghostview 和 Ghostprint
ShellExecute(Handle, 'open', 'gsprint.exe', PChar('"' + filename + '"'), '', SW_HIDE);
4)或者您可以使用第三方库...有一些可用,但并非全部都是免费的
关于Delphi:如何打印PDF而不显示它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2055307/