← Back to team overview

ubuntu-touch-coreapps team mailing list archive

[DocViewer] Using MuPDF in ubuntu-touch

 

Hi all,

I am one of the MuPDF/Ghostscript developers. We've worked with Ubuntu for years to have GS as part of the printing pipeline, and we'd very much like to work with you now to get MuPDF used for both printing and PDF viewing on Ubuntu (in particular on Ubuntu-touch).

We've been talking to tkamppeter about his requirements for printing on mobile devices, and it seems that MuPDF is a good fit. Given the relative lack of space on mobile devices, I understand that it would be nice to standardise on a single PDF renderer for both viewing and printing. We believe that MuPDF is a good candidate for this.

This email hopefully serves to open discussions about using MuPDF on Ubuntu. Even if it turns out that you don't use MuPDF, this would be a useful exercise for us, so we can drive the development in the right direction!

So what is MuPDF? MuPDF is a set of libraries for reading/rendering/interacting with PDF/XPS/other files, plus various viewers/tools written using these libraries. As far as possible we've tried to keep the complexity within the library, meaning that viewers etc tend to be just thin layers of code wrapping our public APIs.

We have example viewers (of varying vintage) for Windows, Linux, iOS and Android. Other people have ported MuPDF to other systems (including qnx and WebOS). We have a Windows 8 viewer in development too. Of these, by far the nicest one to try out is the Android viewer. It is available either from Google Play:

 https://play.google.com/store/apps/details?id=com.artifex.mupdfdemo

or (a newer development version that supports a simple implementation of text reflow):

 http://ghostscript.com/~robin/MuPDF-9.apk

The Android version supports form filling (and interacts with a javascript engine to allow it to do validation). By default we use the V8 library for javascript, but in theory any javascript engine can be linked in with a suitable veneer.

MuPDF is designed from the ground up to be fast, small and efficient, particularly for mobile devices. In recent testing (not by us!) it was found that the android version could seamlessly open and handle files that routinely killed other viewers on the same device.

I hope I've given enough information to at least start discussion here. If you have questions, please don't hesitate to ask.

I'll attempt to hang around in #ubuntu-touch too (I'm in the GMT timezone) and will attempt to join in the meeting scheduled for tomorrow evening.

Thanks,

Robin