API for OpenDocument in Python
Python Roff XSLT Other
Latest commit f0caf60 Jan 27, 2017 @sorenroug sorenroug committed on GitHub Merge pull request #46 from vpoulailleau/patch-1
Clarify usage of bullets in non-numbering style
Permalink
Failed to load latest commit information.
contrib Fixed spelling error in Makefile Feb 11, 2013
csv2ods Make it compatible with Python 2.6. Jun 29, 2015
doc built developer's library reference for release-1.2.4 Oct 28, 2014
examples Added missing copyright statements Dec 11, 2012
grammar First working draft of version 1.2. Sep 9, 2013
mailodf Make it compatible with Python 2.6. Jun 29, 2015
manual Update the manual to odf 1.1 Mar 22, 2009
odf Clarify usage of bullets in non-numbering style Jan 27, 2017
odf2mht Make it compatible with Python 2.6. Jun 29, 2015
odf2xhtml Make it compatible with Python 2.6. Jun 29, 2015
odf2xml Make it compatible with Python 2.6. Jun 29, 2015
odfimgimport Make it compatible with Python 2.6. Jun 29, 2015
odflint Make it compatible with Python 2.6. Jun 29, 2015
odfmeta * fixed a lot of issues due to inconsistencies of the code initially Oct 28, 2014
odfoutline * fixed a lot of issues due to inconsistencies of the code initially Oct 28, 2014
odfuserfield Make it compatible with Python 2.6. Jun 29, 2015
samples Unittest for XMLGenerator Mar 15, 2009
tests Unit test for loading external entities. Jan 2, 2017
xml2odf * fixed a lot of issues due to inconsistencies of the code initially Oct 28, 2014
.gitignore Added document on how to distribute the package. Jul 18, 2015
APACHE-LICENSE-2.0.txt Added the Apache license May 14, 2009
ChangeLog Update to version 1.3.0 Oct 25, 2014
GPL-LICENSE-2.txt Reinstated the GPL license as an option. Oct 25, 2014
HOWTODIST Update to version 1.3.5dev Jan 2, 2017
MANIFEST.in Renamed the docbook sources from *.xml to *.docbook Jan 9, 2013
README.md Remove note about test failure on Python 3 Oct 9, 2015
api-for-odfpy.odt Typo Dec 18, 2009
config.dox Don't put timestamp in HTML footer. Jul 16, 2016
setup Support universal wheels Oct 14, 2015
setup.py Update to version 1.3.5dev Jan 2, 2017

README.md

ODFPY

This is a collection of utility programs written in Python to manipulate OpenDocument 1.2 files.

How to proceed: Each application has its own directory. In there, look at the manual pages. The Python-based tools need the odf library. Just make a symbolic link like this: ln -s ../odf odf ... or type: make

For your own use of the odf library, see api-for-odfpy.odt

INSTALLATION

First you get the package.

$ git clone https://github.com/eea/odfpy.git

Then you can build and install the library for Python2 and Python3:

$ python setup.py build
$ python3 setup.py build
$ su
# python setup.py install
# python3 setup.py install

The library is incompatible with PyXML.

RUNNING TESTS

To run the tests, cd into the tests directory and run make.

REDISTRIBUTION LICENSE

This project, with the exception of the OpenDocument schemas, are Copyright (C) 2006-2014, Daniel Carrera, Alex Hudson, Søren Roug, Thomas Zander, Roman Fordinal, Michael Howitz and Georges Khaznadar.

It is distributed under both GNU General Public License v.2 or (at your option) any later version or APACHE License v.2. See GPL-LICENSE-2.txt and APACHE-LICENSE-2.0.txt.

The OpenDocument RelaxNG Schemas are Copyright © OASIS Open 2005. See the schema files for their copyright notice.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

TODO / IDEAS

  • html2odf Alex Hudson has been contracted to produce a command-line html2odf converter. It should include support for images, tables, CSS, etc. He will provide a C# version first, and later a C version.

  • odf2pdf A valuable tool, but one that is hard to do. PDF is an immensely popular format, but it's tricky to make PDFs. With an odf2pdf tool available, many developers would use ODF purely for the purpose of generating a PDF later. The latest idea is to hire KOffice developers and get them to trim down KOffice into a converter.

  • pdf2odf This conversion is less likely to produce good results, but it might be worth a shot. Poppler is a pdf library that can convert PDF into XML. Maybe we can convert that XML to ODF. http://webcvs.freedesktop.org/poppler/poppler/

  • odfclean A command-line program that removes unused automatic styles, metadata and track-changes. Some companies might like to send all out-going files through odfclean to remove any information they don't want others to see.

  • odf2xliff Create XLIFF extraction and merge application. XLIFF is a OASIS file for translations. You extract the text strings, send them to the translator and then import them. It allows you to work on the document in the meantime and only retranslate the changed parts.

  • odfdiff A program that can generate a diff between two ODF files. Useful for SVN commit messages. This is very difficult to do. But see: http://www.manageability.org/blog/stuff/open-source-xml-diff-in-java/view http://freshmeat.net/projects/xmldiff/

  • odfsign Sign and verify the signature(s) of an ODF document.