PDFCreator将多个pdf文件合并为一个

时间:2014-10-08 09:48:08

标签: pdf printing vb6 pdf-generation

我正在使用PDFCreator将多个文件合并为一个PDF文件。 代码如下所示:

dim pdfJob as new PDFCreator.clsPDFCreator

with pdfJob
   .cOption("UseAutosave")=1
   .cOption("UseAutosaveDirectory")=1
   .cOption("AutosaveDirectory")=sPDFPath
   .cOption("AutosaveFilename")="combine.pdf"
   .cOption("Autosaveformat")=0
   .cClearCache
end with

pdfJob.cPrinterStop = true
pdfJob.cPrintFile("c:\1.pdf") 'pdf-reader pops up and freezes until it is closed
sleep(2000)
pdfJob.cPrintFile("c:\2.pdf") 'pdf-reader pops up and freezes until it is closed
sleep(2000)    
pdfJob.cPrintFile("c:\3.pdf") 'pdf-reader pops up and freezes until it is closed        
sleep(2000)

pdfJob.cCombineAll

pdfJob.cPrinterStop = false

如果我打印.txt,.doc,这段代码将完美运行,但是当涉及PDF时,它将在每次打印时停止,直到我们关闭pdf阅读器应用程序(例如adobe pdf reader,foxit reader)(卡在pdfJob.cPrintfile line)手动(即在上面的情况下,我们将需要关闭pdf阅读器三次才会尝试组合pdf)。

我能问一下,我们是否有办法绕过这个手动关闭步骤,因为我会自动化这个过程。

注意:如果我们将pdfJob.cPrinterStop设置为false,则仍会弹出应用程序窗口,但它不会挂起(只是它不会合并pdfs)

非常感谢

1 个答案:

答案 0 :(得分:2)

我们使用不同的工具PDFtk执行类似的操作。

我个人并不熟悉PDFCreator,但似乎它正在使用操作系统注册的.pdf文件处理程序应用程序,而这正是导致您出现问题的应用程序。如果您需要坚持使用PDFCreator,您将不得不研究您需要与应用程序进行交互的任何PDF应用程序以使其关闭(或者您可以创建代码以编程方式终止该应用程序)

使用PDFtk,它会自行打开.pdf文件并合并它们,而无需打开另一个应用程序来处理.pdf内容。