Skip to content
/ unoconv Public
forked from akaihola/unoconv

Convert between any OpenOffice supported document format using UNO bindings for non-interactive conversion. My fork of dag's svn repository.

License

Notifications You must be signed in to change notification settings

theju/unoconv

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

unoconv converts any document format that OpenOffice can import, to any
document format that OpenOffice can export.

unoconv uses the OpenOffice's UNO bindings for non-interactive conversion
of documents.

unoconv tries to start an ooffice instance (if it cannot find a running one)
that it then uses and destroys. However the success rate of starting and
stopping this ooffice instance depends on some outside factors.

Since there is no feedback mechanism to see if the newly started ooffice is
in fact ready to communicate, we don't know exactly when we can use the UNO
api. By default unoconv waits for 3 seconds, but you can specify another
delay with -T/--timeout. If ooffice is not ready, you may get a random error.

However, you can always start an instance yourself at the default port 2002
(or specify another port with -p/--port) and then use unoconv until you're
finished using it and then stop it.

    unoconv --listener &
    sleep 20
    unoconv -f pdf *.odt
    unoconv -f doc *.odt
    unoconv -f html *.odt
    kill -15 %-

Also possible is to use a listener or OpenOffice instance that accepts
connections on another system and use it from unoconv remotely. This
way the conversion tasks are performed on a dedicated system instead
of on the client system.

Since OpenOffice 2.3 you do not need an X display for starting ooffice.
However you may need the openoffice.org-headless package from your
distribution. Since OpenOffice 2.4 nothing special is needed, running
in headless mode does not require X.

For any older OpenOffice releases, remember that ooffice requires an X
display, even when using it in headless mode. One solution is to use Xvfb
to create a headless X display for ooffice.

    http://www.oooforum.org/forum/viewtopic.phtml?t=11890
    http://www.wonko.be/2008/01/09/running-openoffice-headless-on-debian
    http://ward.vandewege.net/writings/200510auto_doc_conv/
    http://www.artofsolving.com/node/10

Also beware that the pyuno python module needs to be compiled with the exact
same version of python that you are using to load it. A lot of people that
run into problems loading pyuno are actually using a precompiled OpenOffice
that they downloaded somewhere and is incompatible with their python version.
(Sometimes the OpenOffice comes with its own python wrapper.)

Other tools that are useful or similar in operation:

 + Text based document generation
   http://www.methods.co.nz/asciidoc/

 + DocBook to OpenDocument XSLT
   http://open.comsultia.com/docbook2odf/

 + Simple (and stupid) converter from OpenDocument Text to plain text
   http://stosberg.net/odt2txt/

 + Another python tool to aid in converting files using UNO
   http://www.artofsolving.com/files/DocumentConverter.py
   http://www.artofsolving.com/opensource/pyodconverter

---
Please send me improvements to this document.

About

Convert between any OpenOffice supported document format using UNO bindings for non-interactive conversion. My fork of dag's svn repository.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published