Odt to pdf linux

Как конвертировать Word (doc) в PDF в Linux?

У меня есть набор файлов в формате .doc , которые необходимо преобразовать в формат .pdf . Я использую Ubuntu Linux.

Затем перейдите к «Система»> «Администрирование»> «Печать» и создайте новый принтер, установите его в качестве принтера PDF-файла и назовите его «pdf».

Теперь вы найдете ваш файл .pdf в

Если пакет tetex-extra недоступен в вашем дистрибутиве, попробуйте texlive-base плюс texlive-latex-base:

/ PDF куда-нибудь еще?

Вы можете использовать:

Если вы используете X, то вы можете сделать это через Open Office. Поскольку вы возражаете против того, чтобы делать это вручную, помните, что в Open Office есть несколько хороших макрос-скриптов, которые вы можете автоматизировать . Вы можете сделать что-то подобное с AbiWord (AbiWord —to = pdf).

Если у вас нет X, тогда есть антислово, но оно просто извлекает текст — не выполняет форматирование и графику. Есть также wvWare, который я использовал для массового извлечения изображений из файлов документов, но я никогда не пытался использовать его для преобразования файлов документов в PDF-файлы.

Да, и для файлов .docx может потребоваться что-то другое, но, поскольку они представляют собой просто заархивированные XML-файлы, не составит труда сделать с ними что-то полезное. Для массового извлечения изображений вы просто распаковываете их и копируете каталог с изображениями, но мне никогда не нужно было конвертировать их в Linux.

Источник

Как я могу преобразовать ODT файл в PDF?

Кто-нибудь знает, как конвертировать ODT файл (LibreOffice) для PDF ?

7 ответов

Просто откройте документ в libre office и выберите » Экспорт в PDF. «:

Для решения командной строки есть unoconv который преобразует файлы из командной строки:

Примечание: только начиная с Ubuntu 11.10 unoconv зависит от Libre Office. Предыдущие версии unoconv (из Ubuntu 67

Вы также можете использовать командную строку libreoffice для вашей цели. Это дает вам преимущество пакетного преобразования. Но отдельные файлы также возможны. Этот пример преобразует все файлы ODT в текущем каталоге в PDF:

Получите больше информации о параметрах командной строки с:

Вот еще несколько подробностей о методе «не-GUI».

Вы можете использовать этот метод не только для преобразования файлов ODT в PDF. Он также будет работать для файлов MS Word DOCX (он будет работать так же, как LibreOffice способен обрабатывать определенный ODT), и, в общем, для всех типов файлов, которые LibreOffice может открыть.

Я не думаю, что есть двоичный файл с именем libreoffice как один из других предложенных ответов. Тем не менее, есть soffice(.bin) — двоичный файл, который можно использовать для запуска LibreOffice из командной строки. Обычно находится в /usr/lib/libreoffice/program/ ; и очень часто, символическая ссылка /usr/bin/soffice указывает на это место.

Тогда в большинстве случаев параметры —headless —convert-to pdf не достаточно. Это должно быть:

Обязательно следуйте именно этой заглавной!

Затем команда не будет работать, если в вашей системе уже запущен экземпляр GUI LibreOffice. Это вызвано ошибкой № 37531, известной с 2011 года. Добавьте этот дополнительный параметр к вашей команде:

Это создаст новую отдельную среду, которая может использоваться вторым, безголовым экземпляром LO без вмешательства в возможно работающий первый экземпляр GUI LO, запущенный тем же пользователем.

Кроме того, убедитесь, что —outdir /pdf Вы указываете, что существует, и что у вас есть разрешение на запись в него. Или, скорее, используйте другой выходной каталог. Даже если это только для первого раунда тестирования и отладки:

Читайте также:  Ralink rt2870 драйвер windows

Следовательно:

Это работает для меня на Mac OS X Yosemite 10.10.5 с LibreOffice v5.1.2.2 (используя мой конкретный путь для двоичного файла soffice который будет отличаться на Ubuntu в любом случае. ). Это также работает на Debian Jessie 8.0 (используя путь /usr/lib/libreoffice/program/soffice ). Извините, сейчас не могу проверить это на Ubuntu.

Если все это не работает, при попытке обработать DOCX:

Это может быть проблема с конкретным файлом DOCX, с которым вы пытаетесь выполнить команду. Так что сначала создайте очень простой документ DOCX. Для этого используйте сам LibreOffice. Напишите «Привет, мир!» на пустой странице. Сохраните это как DOCX.

Попробуйте снова. Работает ли он с простым DOCX?

Если это снова не работает, повторите шаг 7, но на этот раз сохраните как ODT.

Повторите шаг 8, но на этот раз обязательно укажите ODT.

Последнее: используйте полный путь к soffice , чтобы soffice.bin и к libreoffice и запустить каждый с -h параметр:

  • Вы получаете вывод здесь?
  • Для какой из трех двоичных / символических ссылок?
  • Запишите результаты.
  • Расскажите нам свои выводы.

Сравните их с командной строкой, которую вы использовали:

  • Есть ли какие-либо изменения в именах параметров, заглавных буквах, количестве используемых тире и т. Д.

Для сравнения, мой собственный вывод (Mac OS X) здесь:

Добавьте еще один аргумент в командную строку, чтобы принудительно применить фильтр ввода при soffice открывает ваш файл DOCX:

Источник

Как я могу преобразовать ODT файл в PDF?

Кто-нибудь знает, как конвертировать ODT файл (LibreOffice) в PDF ?

Просто откройте документ в libre office и выберите « Экспорт в PDF . » :

Для решения командной строки есть unoconv, который преобразует файлы из командной строки:

Примечание: только начиная с Ubuntu 11.10 unoconv зависит от Libre Office. Предыдущие версии unoconv (из Ubuntu — Takkat
источник

Вы также можете использовать командную строку libreoffice для вашей цели. Это дает вам преимущество пакетного преобразования. Но отдельные файлы также возможны. Этот пример преобразует все файлы ODT в текущем каталоге в PDF:

Получите больше информации о параметрах командной строки с:

Вот еще несколько подробностей о методе «не-GUI».

Вы можете использовать этот метод не только для преобразования файлов ODT в PDF. Он также будет работать для файлов MS Word DOCX (он будет работать так же, как LibreOffice способен обрабатывать определенный ODT), и, в общем, для всех типов файлов, которые LibreOffice может открыть.

Я не думаю, что есть двоичный файл, названный libreoffice как один из других предложенных ответов. Однако есть soffice(.bin) двоичный файл, который можно использовать для запуска LibreOffice из командной строки. Это обычно находится в /usr/lib/libreoffice/program/ ; и очень часто символическая ссылка /usr/bin/soffice указывает на это место.

Тогда в большинстве случаев параметры —headless —convert-to pdf недостаточны. Это должно быть:

Обязательно следуйте именно этой заглавной!

Затем команда не будет работать, если в вашей системе уже запущен экземпляр GUI LibreOffice. Это вызвано ошибкой № 37531, известной с 2011 года . Добавьте этот дополнительный параметр к вашей команде:

Это создаст новую отдельную среду, которая может использоваться вторым, безголовым экземпляром LO без вмешательства в возможно работающий первый экземпляр GUI LO, запущенный тем же пользователем.

Кроме того, убедитесь, что указанный —outdir /pdf вами объект существует и у вас есть разрешение на запись в него. Или, скорее, используйте другой выходной каталог. Даже если это только для первого раунда тестирования и отладки:

Следовательно:

Это работает для меня на Mac OS X Yosemite 10.10.5 с LibreOffice v5.1.2.2 (используя мой конкретный путь для двоичного файла, soffice который в любом случае будет отличаться в Ubuntu . ). Он также работает на Debian Jessie 8.0 (с использованием пути /usr/lib/libreoffice/program/soffice ). Извините, сейчас не могу проверить это на Ubuntu .

Читайте также:  Режим trim ssd mac os

Если все это не работает, при попытке обработать DOCX:

Это может быть проблема с конкретным файлом DOCX, с которым вы пытаетесь выполнить команду . Так что сначала создайте очень простой документ DOCX. Для этого используйте сам LibreOffice. Напишите «Привет, мир!» на пустой странице. Сохраните это как DOCX.

Попробуйте еще раз. Работает ли он с простым DOCX?

Если это снова не работает, повторите шаг 7, но на этот раз сохраните как ODT.

Повторите шаг 8, но на этот раз обязательно укажите ODT.

Последнее: используйте полный путь к soffice , к soffice.bin и к libreoffice и запускайте каждый с -h параметром:

  • Вы получаете вывод здесь?
  • Для какой из трех двоичных / символических ссылок?
  • Запишите результаты.
  • Расскажите нам свои выводы .

Сравните их с командной строкой, которую вы использовали:

  • Есть ли какие-либо изменения в именах параметров, заглавных буквах, количестве используемых тире и т. Д. ??

Для сравнения, мой собственный вывод (Mac OS X) здесь:

Добавьте еще один аргумент в командную строку, чтобы принудительно применить фильтр ввода при soffice открытии файла DOCX:

Наутилус Скрипт

Этот скрипт использует libreoffice для преобразования файлов, совместимых с LibreOffice, в PDF.

Инструкции по установке смотрите здесь: Как я могу установить скрипт Nautilus?

Примечание. Я решил удалить свой ответ из этого вопроса и опубликовать его модифицированную версию здесь, когда понял, что unoconv он плохо работает с psw файлами и не преобразует их успешно в другие форматы. Там также могут быть проблемы с docx и xlsx форматами.

Тем не менее, Libreoffice полностью поддерживает многие типы файлов; Полная документация доступна на официальном сайте, где указаны действительные форматы ввода и вывода.

Вы можете использовать libreoffice утилиту преобразования командной строки или unoconv , которая доступна в репозиториях. Я считаю, unoconv что это очень полезно, и это, вероятно, то, что вы хотите. Несмотря на то, что Takkat кратко упомянул unoconv , я подумал, что было бы полезно дать некоторые дополнительные сведения и одну строку в пакетном режиме.

Используя терминал, вы можете cd перейти в каталог, содержащий ваши файлы, а затем выполнить пакетное преобразование всех из них, запустив одну строку:

(Этот однострочный текст является модификацией моего скрипта перевода, представленного в этом ответе .)

Если позже вы хотите использовать любые другие форматы файлов, просто подставляем odt и pdf для любых других поддерживаемых форматов ввода и вывода. Вы можете найти поддерживаемые форматы для типа файла, введя unoconv -f odt —show . Для преобразования одного файла используйте, например unoconv -f pdf myfile.odt ,.

Дополнительную информацию о программе и ее возможностях можно найти, войдя в терминал man unoconv или перейдя на веб-страницы Ubuntu .

Источник

Взаимная конвертация и обработка электронных документов

В корпоративном секторе иногда возникает задача автоматической конвертации документов из одного формата в другой, а так же задача их програмной обработки и модификации. Казалось бы, в чём проблема: для нормальных форматов давным-давно написаны полнофункциональные библиотеки для работы — так что Perl или Python в руки и вперёд.

Но, к превеликому сожалению для всех системных администраторов и программистов различных бизнес-приложений, огромная масса документооборота в данный момент всё ещё осуществляется с использованием закрытых и плохо поддающихся модификации и разбору форматов. Что уж тут лукавить — речь идёт о doc, xls и иже с ними, а так же во многом о docx, xlsx и подобных. Что делать с такими файлами, особенно если у вас нету свободной Windows с установленной последней версией Office, — совершенно непонятно. Безусловно, если у вас есть Windows, Visual Studio и навыки работы в C#, то проблем с анализом документов Microsoft будет значительно меньше. Зато возникнут проблемы с ODF. Плюс часто хочется сохранять результат в формате PDF, дабы уже никто не мог его изменить.

Читайте также:  Запуск управлением дисками windows

К счастью, есть достаточно универсальный способ работы практически с любыми распространёнными форматами документов на любой платформе. О нём и пойдёт речь дальше.

Без сомнения все знают про OpenOffice и его прогрессивное ответвление — LibreOffice. Последние версии этих пакетов отлично справляются с документами Microsoft — по крайней мере гораздо лучше многих бесплатных библиотек парсинга.

Но не многие знают, что у OpenOffice и конечно же у LibreOffice есть API, позволяющий работать с документами напрямую из Python. В частности, с помощью этого API можно преспокойно конвертировать документы из одного формата в другой.

Таким образом для разбора любого документа достаточно преобразовать его в соответствующий формат ODF, затем с помощью любимого языка программирования выполнить все необходимые изменения, а затем, при необходимости, сконвертировать результат в PDF или формат MS Office 2003 (doc, xls).

Другой сценарий: у вас есть куча документов в редактируемых форматах (doc, docx, odt), а вам надо сделать из них PDF. Всё тот же скрипт позволит вам без проблем автоматически выполнить такое преобразование. Или же вы для внутреннего документооборота используете стандартизированный ODF, но ваши партнёры до сих пор даже до docx не доросли. Ничего страшного — LibreOffice поможет автоматически сконвертировать ODF в формат MS Office.

Вообще сценариев применения API LibreOffice превеликое множество — так что круг возможных задач для решения очень широк.

Что потребуется

В статье описывается использование LibreOffice на Ubuntu, хотя с небольшой модификацией все инструкции переносятся как на другие дистрибутивы Linux и OpenOffice, так и на Windows и MacOS.

Всё, что нужно — это установленные LibreOffice и Python, а так же базовое умение писать скрипты.

Собственно сам bash скрипт конвертации выглядит так:

Этот скрипт можно вызывать из другого скрипта-обёртки для пакетной обработки большого количества файлов.

Например, мне нужно было добавить к большому количеству doc документов титульные листы одинакового формата и сохранить результат в формате PDF. Для добавления титульных листов я использовал скрипт на Perl и библиотеку OpenOffice::OODoc (доступную в Ubuntu как пакет libopenoffice-oodoc-perl). В итоге получился такой скрипт пакетной обработки:

Теперь достаточно выполнить

и на выходе получим набор PDF файлов с красивыми титульными листами.

Другие возможности

С помощью описанной техники можно не только конвертировать различные форматы документов между собой, но и выполнять экспорт в файлы изображений, как то JPEG или PNG. Для этого потребуется поставить ImageMagic, затем с помощью описанного скрипта сконвертировать документ в PDF, а с помощью ImageMagic сконвертировать PDF в нужный формат изображений:

Чуть больше информации об автоматической конвертации документов с использованием LibreOffice или OpenOffice можно найти тут:

Упоминаемый выше Python API для LibreOffice (который, к слову, называется PyUNO), можно использовать для прямого редактирования документов из Python, хотя зачастую это не очень удобно. Подробнее можно почитать в этом хабратопике.

UPD: Как подсказали в комментариях: добрые люди упростили конвертацию документов с помощью OpenOffice (LibreOffice), написав скрипт-обёртку unoconv. Эта утилитка делает ровно то же и ровно таким же способом, что и описаные выше скрипты. Но она безусловно будет удобней в большинстве случаев, если нормально запустится на вашей системе.

Источник

Оцените статью