Я пытаюсь преобразовать зашифрованные документы (doc / docx) в PDF, используя python.
Что я делаю:
- сначала временно дешифруйте их в отдельной папке
- используйте командную строку unoconv для преобразования дешифрованного файла в pdf:
unoconv -f pdf -eSelectPdfVersaion=1 [path-to-file]
Преобразование выполняется, но я замечаю, что в файлах do c и docx изменяется внешний вид документов (как расшифрованного файла, так и файла PDF). ), который не влияет на исходный зашифрованный файл (я проверил его, просто расшифровав файл с клиента windows и дешифрованный файл, как он был изначально).
Внешний вид - это изменение стиля документа, которое влияет на количество страниц. Например, документ Word на 13 страницах расшифровывается в документ Word на 14 страницах и преобразуется в файл PDF на 14 страницах. Аналогично, файл do c на 348 страницах преобразуется в файл do c на 330 страниц, а затем файл PDF на 330 страниц.
Я обнаружил, что существует небольшая несовместимость стилей между Microsoft Word и версией LibreOffice, установленной с Unoconv (4.3). Выполняя мои тесты, я заметил, что шрифты меняются на совместимые с LibreOffice шрифты, которые немного отличаются по размеру от исходных.
Я установил более позднюю версию LibreOffice (5.1, 5.3) и в моих тестах расшифрованный документ / Файл docx имел правильное форматирование и номера страниц, но unoconv не использует более новую версию и придерживается версии 4.3, создавая таким образом файл PDF с неправильным стилем и номером страницы.
Я пытался использовать:
soffice --headless --convert-to pdf [path-to-file] --outdir [path-to-export-directory]
Но это ничего не делает.
Есть ли способ использовать unoconv с версией LibreOffice, отличной от 4.3?
Есть ли способ заставить команду --convert-to работать с LibreOffice 5.1 или даже 5.3?