Manual:How to use DjVu with MediaWiki

Jump to: navigation, search
DjVu redirects here. This page explains how MediaWiki could work with DjVu. For help page on how to create a DjVu file from a PDF, see Creating a DjVu file

How that works ?[edit | edit source]

Example - Page 5

How to install on GNU/Linux[edit | edit source]

  • Install DjVuLibre :
    − Download the DjVuLibre package (which includes djvudump and ddjvu files). And, in the path :
    make install
    − Or use aptitude or Synaptic in Debian derivatives
  • install netpbm package (use aptitude or Synaptic in Debian derivatives)
  • Finally, add (or modify) the code lines below in the LocalSettings.php file (not in the DefaultSettings.php):
    $wgFileExtensions[] = 'djvu';
    $wgDjvuDump = "djvudump";
    $wgDjvuRenderer = "ddjvu";
    $wgDjvuTxt = "djvutxt";
    $wgDjvuPostProcessor = "ppmtojpeg";
    $wgDjvuOutputExtension = 'jpg';
  • For better thumbnails quality:
    $wgDjvuPostProcessor = "ppmtojpeg -quality=100";

How to install on Win32[edit | edit source]

WARNING : These explanations are obsolete, nothing works.

  1. Download the DjVuLibre software (which includes djvudump.exe and ddjvu.exe files).
  2. Install in "C:\DjVuLibre" (for example).
  3. Download the NetPbm complete package (which includes pnmtojpeg.exe, pnmtopng.exe, ... files).
  4. Install in "C:\GnuWin32\NetPbm"
  5. Add "C:\GnuWin32\NetPbm\bin" to the Windows PATH Environment Variable (and reboot the computer).
  6. Finally, add (or modify) the code lines below in the LocalSettings.php file (not in the DefaultSettings.php):
    • $wgFileExtensions[] = 'djvu';
    • $wgDjvuDump = 'C:/DjVuLibre/djvudump.exe';
    • $wgDjvuRenderer = 'C:/DjVuLibre/ddjvu.exe';
    • $wgDjvuTxt = 'C:/DjVuLibre/djvutxt.exe';
    • $wgDjvuPostProcessor = 'pnmtojpeg.exe';
    • $wgDjvuOutputExtension = 'jpg';


  • don't use long paths in the $wgDjvuPostProcessor variable: it returns an Error creating thumbnail when 'C:' or '../' are written in the path.
  • PHP needs memory to create thumbnails: this means a high memory_limit (~ 128MB) in the php.ini.

How to install on OS X[edit | edit source]

  1. Download the DjVuLibre package
  2. Copy the application into your Applications directory.
  3. Install netpbm
sudo port install netpbm
  1. Follow last step of install on GNU/Linux

Next to do[edit | edit source]

  • How to install DjVuLibre, Qt and netpbm on a server.

Problems and solutions[edit | edit source]

  • If you got «Error creating thumbnail: terminate called after throwing an instance of 'DJVU::GException' ppmtojpeg: EOF / read error reading magic number» when view file, increase the $wgMaxShellMemory.
  • Thumbnails of DjVu-file with non-Latin name are absent in a namespace Page. If you use extension WebStore in your own wiki, then in file $IP/extensions/WebStore/404-handler.php replace next string:
    $rel = substr( $url, strlen( $thumbBase ) + 1 ); // plus one for slash
    $rel = urldecode(substr( $url, strlen( $thumbBase ) + 1 )); // plus one for slash

Other page[edit | edit source]

See also[edit | edit source]

Language: English  • français