¿Alguien sabe cómo convertir un ODT
archivo (LibreOffice) PDF
?
libreoffice
pdf
openoffice.org
SoftTimur
fuente
fuente
Respuestas:
Simplemente abra el documento con libre office y elija Exportar como PDF ... :
Para una solución de línea de comando hay unoconv que convierte archivos de la línea de comando:
Nota: Solo a partir de Ubuntu 11.10 unoconv depende de Libre Office. Las versiones anteriores de unoconv (de Ubuntu <= 11.04) dependen de Open Office (pero también se ejecutará con Libre Office).
fuente
unoconv
, ¡es genial!unoconv: Cannot find a suitable office installation on your system.
, por lo tanto, es inutilizable :(También puede usar la línea de comandos de
libreoffice
para su propósito. Eso te da la ventaja de la conversión por lotes. Pero los archivos individuales también son posibles. Este ejemplo convierte todos los archivos ODT en el directorio actual a PDF:Obtenga más información sobre las opciones de línea de comandos con:
fuente
--env:UserInstallation=file:///path/to/some/directory
.unoconv
. Por ejemplo, usé la línea conunoconv -f pdf *.ppt
éxito.Aquí hay algunos detalles más sobre el método "no GUI".
Puede usar este método no solo para convertir archivos ODT a PDF. También funcionará para archivos MS Word DOCX (funcionará tan bien como LibreOffice puede manejar el ODT particular) y, en general, todos los tipos de archivos que LibreOffice puede abrir.
No creo que haya un binario nombrado
libreoffice
como una de las otras respuestas sugeridas. Sin embargo, existesoffice(.bin)
el binario que se puede usar para iniciar LibreOffice desde la línea de comandos. Por lo general, se encuentra en/usr/lib/libreoffice/program/
; y muy a menudo, un enlace simbólico/usr/bin/soffice
apunta a esa ubicación.Entonces, en la mayoría de los casos, los parámetros
--headless --convert-to pdf
no son suficientes. Necesita ser:¡Asegúrese de seguir exactamente esta capitalización!
A continuación, el comando no funcionará si ya hay una instancia de LibreOffice GUI en funcionamiento en su sistema. Es causado por el error # 37531, conocido desde 2011 . Agregue este parámetro adicional a su comando:
Esto creará un nuevo entorno separado que puede ser utilizado por una segunda instancia de LO sin cabeza sin interferir con una posible primera instancia de LO de GUI iniciada por el mismo usuario.
Además, asegúrese de que el
--outdir /pdf
que especifique existe y de que tiene permiso de escritura. O, más bien, use un directorio de salida diferente. Incluso si es solo para una primera ronda de prueba y depuración:Por lo tanto:
Esto funciona para mí en Mac OS X Yosemite 10.10.5 con LibreOffice v5.1.2.2 (usando mi ruta específica para el binario
soffice
que de todos modos será diferente en Ubuntu ...). También funciona en Debian Jessie 8.0 (usando la ruta/usr/lib/libreoffice/program/soffice
). Lo siento, no puedo probarlo en Ubuntu ahora ...Si todo esto no funciona, cuando intente procesar DOCX:
Puede ser un problema con el archivo DOCX específico con el que prueba el comando ... Así que primero cree un documento DOCX muy simple. Use LibreOffice para esto. Escribe "¡Hola mundo!" en una página vacía Guárdelo como DOCX.
Inténtalo de nuevo. ¿Funciona con el simple DOCX?
Si nuevamente no funciona, repita el paso 7, pero guárdelo como ODT esta vez.
Repita el paso 8, pero asegúrese de hacer referencia a la ODT esta vez.
Última: Uso ruta completa
soffice
, quesoffice.bin
yalibreoffice
y ejecutar cada uno con el-h
parámetro:Compárelos con la línea de comando que utilizó:
A modo de comparación, mi propia salida (Mac OS X) está aquí:
Agregue un argumento más a su línea de comando para aplicar la aplicación de un filtro de entrada cuando
soffice
abra su archivo DOCX:o
fuente
Nautilus Script
Este script utiliza libreoffice para convertir archivos compatibles con LibreOffice a PDF.
Para ver las instrucciones de instalación, consulte aquí: ¿Cómo puedo instalar un script de Nautilus?
fuente
Nota: Decidí eliminar mi respuesta de esta pregunta y publicar una versión modificada aquí cuando me di cuenta de que
unoconv
no trata bien lospsw
archivos y no los convierte con éxito a otros formatos. También puede haber problemasdocx
yxlsx
formatos.Sin embargo, es
Libreoffice
totalmente compatible con muchos tipos de archivos; La documentación completa está disponible en el sitio oficial, que detalla los formatos de entrada y salida válidos.Puede usar la
libreoffice
utilidad de conversión de línea de comandos o unoconv , que está disponible en los repositorios. Me pareceunoconv
muy útil, y probablemente sea lo que quieres. Aunque Takkat ha mencionado brevementeunoconv
, pensé que sería útil dar más detalles y una conversión por lotes de una sola línea.Usando el terminal, podría
cd
acceder al directorio que contiene sus archivos y luego convertirlos por lotes a todos ejecutando una línea como esta:(Esta frase es una modificación de mi script de traducción que aparece en esta respuesta ).
Si luego desea utilizar cualquier otro formato de archivo, simplemente sustituya el
odt
ypdf
cualquier otro formato de entrada y salida compatible. Puede encontrar los formatos compatibles para un tipo de archivo ingresandounoconv -f odt --show
. Para convertir un solo archivo use, por ejemplounoconv -f pdf myfile.odt
,.Puede encontrar más información y opciones para el programa ingresando en la terminal
man unoconv
o visitando las páginas de manual de Ubuntu en línea .fuente
Otra secuencia de comandos de Nautilus
Este muy simple y liviano Nautilus Script utiliza
unoconv
para convertir archivos seleccionados compatibles con LibreOffice a formato PDF:fuente
Estoy agregando una nueva respuesta, porque en los últimos tiempos Pandoc abrió una serie de nuevas rutas de conversión obteniendo la capacidad de leer archivos ODT.
Cuando Pandoc lee en un formato de archivo, lo convierte a un formato interno, "nativo" (que es una forma de JSON).
Desde su forma nativa, puede exportar el documento a una amplia gama de otros formatos. No solo PDF, sino también DocBook, HTML, EPUB, DOCX, ASCIIdoc, DokuWiki, MediaWiki y lo que no ...
Como aquí el formato de salida deseado es PDF, tenemos otra opción de diferentes rutas, proporcionadas por lo que Pandoc llama un motor pdf . Aquí está la lista de motores PDF actualmente disponibles (válido para Pandoc v2.7.2 y versiones posteriores; las versiones anteriores pueden admitir solo una lista más pequeña):
pdflatex: Esto requiere que se instale LaTeX además de Pandoc.
xelatex: Esto requiere que se instale XeLaTeX además de Pandoc (también disponible como un paquete adicional para las distribuciones generales de TeX ).
contexto: Esto requiere que se instale ConTeXt además de Pandoc; ConTeXt está disponible como un paquete adicional para la mayoría de las distribuciones generales de TeX ).
lualatex: esto requiere que se instale LuaTeX además de Pandoc (también disponible como un paquete adicional para las distribuciones generales de TeX ).
pdfroff: esto requiere que se instale GNU Roff además de Pandoc.
wkhtml2pdf: Esto requiere la instalación de wkhtmltopdf además de Pandoc.
prince: Esto requiere que se instale PrinceXML además de Pandoc.
weasyprint: requiere la instalación de weasyprint además de Pandoc.
Hay algunos motores PDF más y más nuevos ahora integrados en Pandoc, que todavía no he utilizado y que actualmente no puedo describir con más detalle: tectonic y latexmk .
ADVERTENCIA: ¡No espere que la apariencia de su documento original sea idéntica en todas las salidas PDF a la vista previa de impresión o exportación PDF del ODT! Pandoc, cuando la conversión no conserva los diseños , conserva el contenido y la estructura de los documentos: los párrafos siguen siendo párrafos, las palabras resaltadas siguen enfatizadas, los encabezados siguen siendo encabezados, etc. Pero el aspecto general puede cambiar considerablemente.
Comandos de ejemplo
pdflatex:
XeLaTeX:
LuaLaTeX:
Contexto:
GNU troff:
wkhtmltopdf:
PrinceXML:
weasyprint:
Los comandos anteriores son los más básicos para la conversión. Dependiendo del motor de PDF que elija, puede haber muchas otras opciones posibles para controlar la apariencia del archivo PDF de salida. Por ejemplo, los siguientes parámetros adicionales se pueden agregar a todas esas rutas de enrutamiento a través de LaTeX:
que utilizará un tamaño de página personalizado (un poco más grande que DIN A4) con márgenes de 2 cm en el borde superior y 1,12 cm en los otros tres bordes).
fuente