The problem is what interests all but beginners in typography. Its solution may be, and often is, moderately exciting; although if the problem is successfully solved no one perceives it has existed. — Daniel Berkeley Updike
The Wikipublisher project develops a free/libre open source Typesetting Engine that takes Web page content and turns it into a form suitable for printing. The current version adds this capability to the PmWiki engine. The PressBooks project is developing an interface between WordPress and Wikipublisher. If there is enough demand, the project may add support for other Web content management systems.
The most common use case is for online book authoring and publishing.
The project was a finalist in the New Zealand Open Source Awards 2008 for bringing the power of LATEX to the world of wikis.
On this page… (hide)
Web pages and print documents exist as two solitudes: information created as a Web page may print poorly; information created as a print document may translate into an unappealing Web page. The Wikipublisher system lets authors create content online first, as Web pages, and lets readers turn individual pages or page collections into print documents. It uses wiki software as a lightweight and extensible content management system, so any page can be edited using any Web browser. It uses LATEX as the typesetting engine, thus providing print output of the highest quality.
Wikipublisher’s goal is to make it easy to turn Web page content into beautiful print documents. Three principles underpin and inform its design:
The Wikipublisher project was born in late 2004 at Affinity Limited, a small IT management consultancy, based in Wellington, New Zealand. Like most professional services firms, our document production systems, based on Adobe FrameMaker, were geared to producing print documents such as letters, proposals, short papers, and reports. Our Web presence was essentially an online brochure — who we are, what we do, and how to contact us. Communication with clients primarily used e-mail to send document attachments back and forth. Several years ago, 3 things happened:
Apple’s switch to Intel processors meant that Mac OS 9 was dead and with it FrameMaker on Mac. Either we had to switch to Windows or find a replacement. We decided to investigate the possibility of creating a “consultant’s report” as a set of linked wiki Web pages and using some form of typesetting engine to re-purpose this into a printable document, complete with cover page, table of contents, running headers and footers, and other print-oriented structures.
With the help of a research and development grant from New Zealand’s Foundation for Research, Science and Technology, we teamed up with the School of Mathematics, Statistics and Computing Sciences at Victoria University of Wellington to carry out the project. The grant allowed us to hire a graduate student on a part-time basis for just over a year, while he worked on a MSc. Following a round of enhancements and bug fixes, we can now produce letters, articles, reports, presentations and books, including lists, images, tables, equations, citations and bibliographies — in other words, we have a robust, fully-fledged publishing system for Web and print documents.
The Wikipublisher system currently comprises three modules.
John Rankin is the principal designer, maintainer and enhancer of the software. He wrote most of the components that make up the Cookbook:PublishPDF library. He developed the metadata model that lets readers customise the PDF output using a Web form and added various features to the Wikibook PDF server, such as the ability to typeset letters, change a book’s cover style, and automatically resize images.
Donald Gordon wrote the Perl script that drives the PDF server and taught the XSL script many new LATEX tricks. He did the back-end integration that means we can give the PDF server any URL that returns a stream of Wikibook XML and get back a typeset PDF suitable for printing. He also wrote the PmWiki handlers to translate wiki tables and wiki styles into useful XML.
Darren Willis wrote the server-side components that teach LATEX how to process the XML created from wiki citation markup.
Wikipublisher is free (libre) software, covered by the same licence terms as the underlying software on which the component parts are built.
The Cookbook:PublishPDF library for PmWiki is free software. You can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
The Wikibook PDF server and DTD are distributed under the terms of the Artistic License, version 2.0. In accordance with the terms of the Artistic License, the distribution includes access to a tarball of the original
tbookdtd package, available as a download from Install the Server. The compiled LATEX packages in wikibook/template are distributed under the LATEX Project Public License.
For people who run the Wikibook PDF server as part of a public-facing network service, the software carries an additional GNU Affero General Public Licence, version 3 or later. This ensures users of a hosted service enjoy the same freedoms as those who run the software on their own computers.