A Python package to create/manipulate OpenDocumentFormat files.
Project description
EzODF.py
--------
.. image:: https://travis-ci.org/T0ha/ezodf.svg?branch=master
:target: https://travis-ci.org/T0ha/ezodf
If you want to support us
.. image:: https://api.flattr.com/button/flattr-badge-large.png
:target: https://flattr.com/submit/auto?user_id=t0ha&url=https://github.com/T0ha/ezodf&title=ezodf&language=python&tags=github&category=software
Abstract
========
**ezodf** is a Python package to create new or open existing OpenDocument
(ODF) files to extract, add, modify or delete document data.
a simple example::
from ezodf import newdoc, Paragraph, Heading, Sheet
odt = newdoc(doctype='odt', filename='text.odt')
odt.body += Heading("Chapter 1")
odt.body += Paragraph("This is a paragraph.")
odt.save()
ods = newdoc(doctype='ods', filename='spreadsheet.ods')
sheet = Sheet('SHEET', size=(10, 10))
ods.sheets += sheet
sheet['A1'].set_value("cell with text")
sheet['B2'].set_value(3.141592)
sheet['C3'].set_value(100, currency='USD')
sheet['D4'].formula = "of:=SUM([.B2];[.C3])"
pi = sheet[1, 1].value
ods.save()
for more examples see: /examples folder
Dependencies
============
* lxml <http://codespeak.net/lxml/> for painless serialisation with prefix
declaration (xlmns:prefix="global:namespace:specifier") in the root element.
Declarations for unused prefixes are also possible.
* nose <https://nose.readthedocs.org> for testing
For CPython 2.6 compatibility:
* weakrefset <https://pypi.python.org/pypi/weakrefset> for fixing incompatibility with
weakref module before 2.7
* unittest2 <https://pypi.python.org/pypi/unittest2> for asserts like in python 2.7+
The target platform is CPython 2.7 and CPython 3.2+, work on compability with
CPython 2.6 is in progress.
Installation
============
with pip::
pip install ezodf
or from source::
python setup.py install
Documentation
=============
http://packages.python.org/ezodf
send feedback to t0hashvein@gmail..com
ezodf can be found on GitHub at:
https://github.com/T0ha/ezodf
NEWS
====
Version 0.3.1 - December 2015
* File-like objects utilisation improved
Version 0.3.0 - November 2014
* Maitainer changed
* Simple variables and user fields support added
* Tests system changed to nose
* Travis CI support added
* Python 2.6 - 3.4 support added
Version 0.2.5 - Juli 2012
* Alpha version
* license changed to MIT license
* development stopped - for now
Version 0.2.4 - June 2012
* Alpha version
* can open tables with many repeated rows/cols, 3 opening strategies are supported
* tested: on Win7/Ubuntu 32-Bit with CPython 2.7 and CPython 3.2
Version 0.2.3 - January 2012
* Alpha version
* tested: on Windows7 32 Bit with CPython 2.7 and CPython 3.2
Version 0.2.2 - March 2011
* Alpha version
* Spreadsheet: added cell-span management
* tested with Python 3.2 - OK
* added tobytes() method to all document classes
* opendoc() accept the zip-file content as 'bytes' instead of the filename
as parameter 'filename'
* newdoc() accept the zip-file content as 'bytes' instead of the filename
as parameter 'template'
Version 0.2.1 - 06 February 2011
* Alpha version
* added basic spreadsheet support
* Spreadsheet: added sheet, row, column and cell management
Version 0.2.0 - 18 January 2011
* Alpha version
* create new empty odt, ods, odp, odg file
* added template support - can create ott, ots, otp, otg files
* open documents - ezodf.opendoc(filename)
* create new documents - ezdof.newdoc(doctype, filename, template)
* Text: added Paragraph, Heading, Span, Hyperlink, List, Section objects
Version 0.1.0 - 02 January 2011
* Pre-Alpha version
* open/saveas ODF documents
* modify meta data
--------
.. image:: https://travis-ci.org/T0ha/ezodf.svg?branch=master
:target: https://travis-ci.org/T0ha/ezodf
If you want to support us
.. image:: https://api.flattr.com/button/flattr-badge-large.png
:target: https://flattr.com/submit/auto?user_id=t0ha&url=https://github.com/T0ha/ezodf&title=ezodf&language=python&tags=github&category=software
Abstract
========
**ezodf** is a Python package to create new or open existing OpenDocument
(ODF) files to extract, add, modify or delete document data.
a simple example::
from ezodf import newdoc, Paragraph, Heading, Sheet
odt = newdoc(doctype='odt', filename='text.odt')
odt.body += Heading("Chapter 1")
odt.body += Paragraph("This is a paragraph.")
odt.save()
ods = newdoc(doctype='ods', filename='spreadsheet.ods')
sheet = Sheet('SHEET', size=(10, 10))
ods.sheets += sheet
sheet['A1'].set_value("cell with text")
sheet['B2'].set_value(3.141592)
sheet['C3'].set_value(100, currency='USD')
sheet['D4'].formula = "of:=SUM([.B2];[.C3])"
pi = sheet[1, 1].value
ods.save()
for more examples see: /examples folder
Dependencies
============
* lxml <http://codespeak.net/lxml/> for painless serialisation with prefix
declaration (xlmns:prefix="global:namespace:specifier") in the root element.
Declarations for unused prefixes are also possible.
* nose <https://nose.readthedocs.org> for testing
For CPython 2.6 compatibility:
* weakrefset <https://pypi.python.org/pypi/weakrefset> for fixing incompatibility with
weakref module before 2.7
* unittest2 <https://pypi.python.org/pypi/unittest2> for asserts like in python 2.7+
The target platform is CPython 2.7 and CPython 3.2+, work on compability with
CPython 2.6 is in progress.
Installation
============
with pip::
pip install ezodf
or from source::
python setup.py install
Documentation
=============
http://packages.python.org/ezodf
send feedback to t0hashvein@gmail..com
ezodf can be found on GitHub at:
https://github.com/T0ha/ezodf
NEWS
====
Version 0.3.1 - December 2015
* File-like objects utilisation improved
Version 0.3.0 - November 2014
* Maitainer changed
* Simple variables and user fields support added
* Tests system changed to nose
* Travis CI support added
* Python 2.6 - 3.4 support added
Version 0.2.5 - Juli 2012
* Alpha version
* license changed to MIT license
* development stopped - for now
Version 0.2.4 - June 2012
* Alpha version
* can open tables with many repeated rows/cols, 3 opening strategies are supported
* tested: on Win7/Ubuntu 32-Bit with CPython 2.7 and CPython 3.2
Version 0.2.3 - January 2012
* Alpha version
* tested: on Windows7 32 Bit with CPython 2.7 and CPython 3.2
Version 0.2.2 - March 2011
* Alpha version
* Spreadsheet: added cell-span management
* tested with Python 3.2 - OK
* added tobytes() method to all document classes
* opendoc() accept the zip-file content as 'bytes' instead of the filename
as parameter 'filename'
* newdoc() accept the zip-file content as 'bytes' instead of the filename
as parameter 'template'
Version 0.2.1 - 06 February 2011
* Alpha version
* added basic spreadsheet support
* Spreadsheet: added sheet, row, column and cell management
Version 0.2.0 - 18 January 2011
* Alpha version
* create new empty odt, ods, odp, odg file
* added template support - can create ott, ots, otp, otg files
* open documents - ezodf.opendoc(filename)
* create new documents - ezdof.newdoc(doctype, filename, template)
* Text: added Paragraph, Heading, Span, Hyperlink, List, Section objects
Version 0.1.0 - 02 January 2011
* Pre-Alpha version
* open/saveas ODF documents
* modify meta data