2014-10-08 2 views
1

Я использую PDFCreator для объединения нескольких файлов в один файл PDF. код выглядит следующим образом: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) вручную (т. е. в приведенном выше случае нам нужно будет закрыть PDF-ридер три раза, прежде чем попытаться объединить pdf).

Могу ли я спросить, есть ли способ, которым мы могли бы обойти этот шаг закрытия вручную, поскольку я хотел бы автоматизировать процесс.

Примечания: Если мы устанавливаем pdfJob.cPrinterStop как ложные, окно приложения будет еще всплывало, но это не будет висеть (только это не будет сочетать ПРВ)

Большого спасибо

ответ

2

Мы делаем что-то аналогичный, но с другим инструментом, PDFtk.

Я лично не знаком с PDFCreator, но похоже, что он использует зарегистрированное ОС .pdf-приложение для обработки файлов, и именно это приложение вызывает вашу проблему. Если вам нужно придерживаться PDFCreator, вам нужно будет исследовать любое приложение PDF, в котором вам понадобится ваше приложение, чтобы взаимодействовать с ним, чтобы закрыть его (или, альтернативно, вы могли бы создать код для автоматического завершения этого приложения)

С PDFtk , он открывает файлы .pdf на своем собственном и объединяет их, не открывая другое приложение для обработки содержимого .pdf.

Смежные вопросы