A Java based driver for py3o
Project description
Juno for py3o
py3o.renderers.juno is a Java driver for py3o to transform an OpenOffice document into a PDF
It is intended to be used in conjunction with py3o.renderserver But can be used outside it if you wish.
Note for end-users
If you just search for an easy way to render LibreOffice files to PDF or DOCX, with ot without templating capabilities, you should directly look at py3o.fusion
- py3o.fusion is a packaged webservice that lets you send a template, a target format and your data
and will return the resulting file.
Prerequisites
Since this is a Java implementation you will need to install jpype1 and to have a recent Java runtime on the rendering machine. You will also need a running OpenOffice instance. (If you are on windows this can be addressed by using the py3o.renderserver Open Office service.)
This has been tested to build correctly with:
Oracle JDK 1.6 and OpenOffice 3.2.1 on Windows 7 and Windows server 2003
Oracle JDK 1.6 and LibreOffice 3.4 on Windows 7 64bit
OpenJDK 6 and LibreOffice 3.4 on Linux (Ubuntu and RHEL 5)
OpenJDK 7 and LibreOffice 4.0.4 on Linux (Ubuntu 13.04)
OpenJDK 7 and LibreOffice 4.2.4.2 on Linux (Ubuntu 14.04)
For example if you are on Ubuntu you should run this command:
$ sudo apt-get install default-jdk
Usage
from py3o.renderers.juno import start_jvm, Convertor, formats import datetime # first arg is the jvm.so or .dll # second arg is the basedir where we can find the basis3.3/program/classes/unoil.jar # third argument it the ure basedir where we can find ure/share/java/*.jar containing # java_uno.jar, juh.jar, jurt.jar, unoloader.jar # the fourth argument was the openoffice version but is no more used # fifth argument is the max memory you want to give to the JVM start_jvm( "/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/amd64/server/libjvm.so", "/usr/lib/libreoffice", "/usr/lib", "", 140) c = Convertor("127.0.0.1", "8997") t1 = datetime.datetime.now() c.convert("py3o_example.odt", "py3o_example.pdf", formats['PDF']) t2 = datetime.datetime.now()
For more information please read the example provided in the examples dir and read the API documentation.
Installation
$ pip install –upgrade py3o.renderers.juno
Requirements
We just made a change of requirement from jpype to jpype1 in version 0.6 which should be pip installable by anyone with the correct toolchain. This means all requirements should now install automatically on a development machine.
Driver compilation and installation
NOTE: this is optionnal and reserved for developpers who want to compile the jar file by themselves
If you want to install from source you’ll need to clone our repository:
$ hg clone http://bitbucket.org/faide/py3o.renderers.juno $ cd py3o.renderers.juno/java/py3oconvertor $ ./compile.sh $ cd ../../ $ python setup.py develop
Please note how you must first compile the jar file with our script (some more example scripts are available for windows and OpenOffice). If something fails, first try to edit the script and find if all referenced jar files are present on your system.
Contributors
By order of appearance:
Florent Aide
Thomas Desvenain
Eric Bréhault
Release Notes
2016-11-28 0.8
Update java classpath depending on plateform (Thomas Desvenain & Eric Bréhault)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
File details
Details for the file py3o.renderers.juno-0.8.zip
.
File metadata
- Download URL: py3o.renderers.juno-0.8.zip
- Upload date:
- Size: 52.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff32cb8cbe6be74b66abf1ac51e4d0069a846aa253f43d7567baab378b670a71 |
|
MD5 | 6841e1fa9ca2784cd1d0f70ac09ba94f |
|
BLAKE2b-256 | fa2491c8fd9feead094829d93f8c45bb13706c900ff30390029f2a8bcb6d357c |
File details
Details for the file py3o.renderers.juno-0.8.tar.gz
.
File metadata
- Download URL: py3o.renderers.juno-0.8.tar.gz
- Upload date:
- Size: 41.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb246da542d01b08cab01858aabeb59cb08ef4070fd121f905ac1ea70e68a81b |
|
MD5 | c84c4598703911b4c58b784e8e183507 |
|
BLAKE2b-256 | facf5c5b6e9050391c2e684256b36d12b2916d3aafae3e7c721c36c7ad3ae2ad |
File details
Details for the file py3o.renderers.juno-0.8-py2.7.egg
.
File metadata
- Download URL: py3o.renderers.juno-0.8-py2.7.egg
- Upload date:
- Size: 12.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 249f06b7c82564aeece3d33bea1b57cf762890c0b5aa2e5c9fcbeb7c2e022381 |
|
MD5 | 2716373950a8099a4c16922779df1849 |
|
BLAKE2b-256 | 96f283e25abe9b12b04ed750cbba49ef6137d8c2268b696b54b9fdef63a204dd |
File details
Details for the file py3o.renderers.juno-0.8-py2-none-any.whl
.
File metadata
- Download URL: py3o.renderers.juno-0.8-py2-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ea09ba34c6ab0af1a64c6d487ab52238395969bae6f5068073260ab6b1c2c9e |
|
MD5 | 780eac25d9fd5052af932187d55cc6e9 |
|
BLAKE2b-256 | 0b213a541705d970867849f120a4591792205c3cb8b885b1c1964a52ebb53350 |