Recent Changes · Search:

Support the Project



edit SideBar


Wikipublisher brings typographic style to Web pages.

Turning a long word processing document, designed for print, into a set of linked HTML pages is hard to do well. The longer the document and the more frequently it changes, the harder it is to sustain a reliable and efficient conversion process. On the other hand, assembling a set of HTML pages into a form suitable for printing and reading offline — for example, as a book — is equally hard. Existing solutions are daunting and expensive.

On this page… (hide)

  1.   1.  Wikipublisher loves print
  2.   2.  Why LATEX
    1.   2.1  Perfect paragraphs
    2.   2.2  Perfect pages
    3.   2.3  Perfect publishing
  3.   3.  It just works
    1.   3.1  Footnotes and marginal notes
    2.   3.2  Page cross-references
    3.   3.3  Abbreviations
  4.   4.  The Wikipublisher challenge

1.  Wikipublisher loves print

Wikipublisher lets us maintain one authoritative source One authoritative sourcefor both web and print, and generate printed documents on-the-fly. With 2 mouse-clicks, a reader can turn a single web page or page collection into a beautifully typeset print document. This capability is unique in a number of ways:

  • it is 100% open source, open standards
  • it uses LATEX as the typesetting engine — the gold standard for electronic publishing
  • it supports bibliographies for scholarly writing (citations and references)
  • it understands print metadata — e.g. 3 clicks to choose US letter paper, serif headings, duplex off
  • everything just works — tables, images, footnotes, page numbers, table of contents, headers and footers, smart quotes, ligatures …

The printed output is better quality than 99.9% of word processing documents, every time. Use of an intermediate XML structure guarantees a consistent look.

2.  Why LATEX

For those unfamiliar with LATEX, LATEX is the gold standardhere are some of the things it does for us. The big and familiar idea is authors focus on meaning, LATEX takes care of presentation.

2.1  Perfect paragraphs

LATEX uses a very clever algorithm to handle text justification — optimising inter-word space across the entire paragraph, not just the current line. Adobe InDesign uses the same method. It also pushes punctuation marks like hypens slightly into the right hand margin and makes the space after a full stop wider than the space between words (but not 2 spaces wide). The result — no rivers of white space running down the printed page; every paragraph is as perfect as it can be.

2.2  Perfect pages

LATEX does the obvious things — there is never a page break after a heading; there is always extra space above a heading. And Wikipublisher makes sure the page structure is always section, subsection, subsubsection, … LATEX also does less obvious, but really good, things — if there isn’t room on the current page, tables and figures “float” to the next page and the text flows back to fill the space created. Wikipublisher also automatically shrinks large images to fit the page. The result — no split tables, no half-empty pages, high readability; every page is as perfect as it can be.

2.3  Perfect publishing

LATEX uses document classes — template files which control the layout and presentation of all documents in the class. Wikipublisher supports 4 classes: articles for a single web page, reports for page collections, books (which have chapters), and letters (specially formatted pages). Depending on the class, the output may have a cover page, a table of contents, headers and footers mirrored on odd (recto) and even (verso) pages, numbered headings and subheadings, and so on. Wikipublisher’s print metadata makes it easy to change the look within a class — choose the fontset, chapter style, watermark, and so on.

3.  It just works

There are many differences between Web and print presentation; Do the right thingWikipublisher takes care of them without the author having to think about it. The author doesn’t need to be a layout expert. Here are a few examples.

3.1  Footnotes and marginal notes

The address of an external link is automatically converted into a footnote1. This page also includes markup to produce short marginal notes, highlighting some of the big themes of the page. In print, the convention is to put marginal notes in the outside margin of duplexed pages. Wikipublisher takes care of this automatically. If duplex is off, marginal notes appear in the right margin.

3.2  Page cross-references

On this site, we have many links between pages, such as a link to the testimonials page. On the Web, we click and go to the page. However, if we create a report document to publish this current page and the testimonials page, what happens to the link? In print, we want a cross-reference to the page number. Similarly, a table of contents needs to include page numbers. Wikipublisher automatically turns intra-document links into page number references.

3.3  Abbreviations

TINFL is an example of an abbreviation. On the Web, mousing over the abbreviation reveals its meaning. In print, plain English practice is to expand the abbreviation in brackets. Some more traditional authors prefer to spell out the abbreviation first and put the contracted form in brackets following. Wikipublisher can be configured to do it either way; its default setting is the plain English style.

4.  The Wikipublisher challenge

Competition welcomeWe have been unable to find any other project, open source or proprietary, which can do everything Wikipublisher does. We have never seen a Web page “printable view” produce print output anywhere near the quality of Wikipublisher’s PDF output. If you know of any, contact us!

« Why We Need Wikipublisher | Home Page | Wikipublisher Technologies »


1 You can also define a plain old footnote. (↑)

Creative Commons License
Edit · History · Print · Recent Changes · Search · Links
Page last modified on 09 June 2008 at 04:28 PM