Имя: Пароль:
1C
 
Массовая конвертация word в pdf через COM
0 zippygrill
 
26.05.26
14:53
Привет

Есть у меня функция конвертирующая  из word в pdf через COMОбъект.
Нужно прогнать оч больше количество файлов word в pdf и каждый раз создавать com не оч производительно, да и стали всплывать ошибки рода Интерфейс не поддерживается.
Вообще возможно открыть один com и конвертировать много файлов?

Функция КонвертироватьWord_Pdf(ПутьКФайлуWord) Экспорт
    FilePDF = ПолучитьИмяВременногоФайла("pdf");
    
    MSWordApp = Новый COMОбъект("Word.Application");
    MSWordApp.Visible = False;                    
    MSWordApp.Documents.Open(ПутьКФайлуWord);
    
    WordDocument = MSWordApp.Application.Documents(1);
    WordDocument.Activate();
    WordDocument.SaveAs(FilePDF, 17);
    
    MSWordApp.Application.Quit();
    Возврат FilePDF;
КонецФункции // КонвертироватьWord_Pdf()
1 Fragster
 
гуру
26.05.26
15:12
куча инструментов командной строки для этого
2 b_ru
 
26.05.26
16:07
WordDocument.Close() вместо MSWordApp.Quit() и будет тебе счастье. Но действительно зачем, если есть (1)
3 spiller26
 
26.05.26
16:10
(1) Вот примеры:
Winda:
OfficeToPDF — утилита командной строки, которая преобразует документы Microsoft Office в PDF с использованием встроенных функций экспорта Office
C:\Users\test> officetopdf.exe somefile.docx somefile.pdf
Linux:
soffice — команда для вызова LibreOffice
soffice --convert-to pdf example.docx
4 Fish
 
гуру
26.05.26
16:24
(0) Это не конвертация, а онанизм какой-то. Есть же куча инструментов для конвертации.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший