LibreOffice Developer Tools
Project description
OOO Development Tools (ODEV) is intended for programmers who want to learn and use the Python version of the LibreOffice API.
This allows Python to control and manipulate LibreOffice’s text, drawing, presentation, spreadsheet, and database applications, and a lot more (e.g. its spell checker, forms designer, and charting tools).
One of the aims is to develop utility code to help flatten the steep learning curve for the API. For example, The Lo class simplifies the steps needed to initialize the API (by creating a connection to a LibreOffice process), to open/create a document, save it, and close down LibreOffice.
Currently this project has been tested on LibreOffice in Windows and Linux (Ubuntu).
Advantages of Python
Macros are pieces of programming code that runs in office suites and helps automate routine tasks. Specifically, in LibreOffice API these codes can be written with so many programming languages thanks to the Universal Network Objects (UNO).
Since LibreOffice is multi-platform we can use our documents at different platforms like Mac, Windows, and Linux. So we need a cross-platform language to run our macros at different platforms.
Python has the advantage that it is cross-platform and can run inside the office environment as macros and outside office environment on the command line.
Python has a vast set libraries that can be used in a project, including Numpy and Numexpr which are excellent and powerful at numeric computation.
This makes Python and excellent choice with maximum flexibility.
Documentation
Read documentation
Installation
PIP
ooo-dev-tools PyPI
$ pip install ooo-dev-tools
Modules
Currently the Calc Module and the Write module are released.
- Future releases will add:
Base (LibreOffice Base)
Chart (charting)
Chart2 (charging)
Clip (clipboard support)
Dialogs (Build dialog forms)
Draw (LibreOffice Draw)
Forms (Support for building forms)
Gallery (Methods for accessing and reporting on the Gallery)
Mail (Mail service provider)
Print (Print service provider)
And more …
- Include modules still in beta:
Color (Various color utils)
DateUtil (Date Time utilities)
FileIO (File Input and Output for working with LO)
GUI (Various GUI methods for manipulating LO Windows)
ImagesLo (Various methods for working with Images)
Lo (Various methods common to LO applications)
Props (Various methods for working with the many API properties)
Inspiration
Much of this project is inspired by the work of Dr. Andrew Davison and the work on Java LibreOffice Programming
See LibreOffice Programming that aims to gradually explain this content in a python context.
Other
Figure 1: Calc Find and Replace Automation Example
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ooo_dev_tools-0.4.18-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcd87ef53e031b9ce97722ce9ecb025d4c9ef40a969d0f7b17f7968f260dc8a8 |
|
MD5 | 4e614515a98d8228ae67b53b30cb8f98 |
|
BLAKE2b-256 | f6db4b5eb762541502494a7d18d83b6b431060f6521b59d7eae2d0c034b83fa8 |