Thursday, September 24, 2009

PDF XML-RPC Server v1.0 released

By Vasudev Ram.

UPDATE: Made some edits to the post.

Hi,

I've released Version of 1.0 of a PDF XML-RPC Server. It's an XML-RPC server that allows you to create PDF content from text (when used together with a corresponding client, about which more below).

The server is written in Python. It uses XML-RPC and my xtopdf toolkit for PDF creation; xtopdf in turn makes use of the open source version of the ReportLab toolkit.

Since it runs on XML-RPC and uses HTTP as the transport, you can install the server on any machine on which Python and ReportLab are or can be installed; you can install the client, which is also written in Python, either on the same computer as the server, or anywhere else on your intranet or the Internet; again, you need Python on that other computer - but not ReportLab. Then, once the PDF XML-RPC server is started up, you can use the client to send lines of text to the server, and get back a PDF with the same content as that text. That is, you can do client-server PDF creation from text.

Requirements:

For server:
- Python v2.2 or higher, but use latest stable version (2.6 as of now).
- ReportLab v1.x (2.x has some issues with xtopdf).
- xtopdf v1.0

The server is available now. You can download it here. It is released as open source software under the new BSD license.

There is no separate documentation at the moment. (Most of the functions and methods are briefly documented with Python docstrings, though). I'll be adding some docs in the near future, also a few examples of how to use it. But the code is very straightforward, so anyone with a working knowledge of Python and XML-RPC should be able to understand it and use it right away (*). Also, the client (see below) already has an example of how to use it.

(*) That is, once the corresponding PDF XML-RPC client is available, which will be the subject of a following post on this blog in the next few days.

I welcome any feedback on the code, new features, bugs, etc.
You can either put the feedback as comments on this post, or, if it is long, you may want to send it via the contact page of my web site.

Vasudev Ram - Dancing Bison Enterprises

No comments: