Manual:How to use DjVu with MediaWiki

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

 
Example
 
Example - Page 5

How to install on GNU/LinuxEdit

For MediaWiki-Docker run the following command to install all the necessary packages.
docker-compose exec -u 0 mediawiki bash -c 'apt update && apt install djvulibre-bin netpbm'
  • Install DjVuLibre :
    − Download the DjVuLibre package (which includes djvudump and ddjvu files). And, in the path:
    ./configure
    make
    make install
    
    − Or use aptitude or Synaptic in Debian derivatives (package djvulibre-bin)
  • install netpbm and netpbm-progs packages (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 = "pnmtojpeg";
    $wgDjvuOutputExtension = 'jpg';
    
  • For better thumbnails quality:
    $wgDjvuPostProcessor = "ppmtojpeg -quality=100";
    
  • Can also use png thumbnails with
$wgDjvuPostProcessor = "pnmtopng";
$wgDjvuOutputExtension = 'png';

How to install on Win32Edit

  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';
    

NOTES:

  • PHP needs memory to create thumbnails: this means a high memory_limit (~ 128MB) in the php.ini.

How to install on OS XEdit

  1. Install djvu and netpbm using the homebrew package manager.
    brew install djvulibre netpbm
    
  2. Follow last step of install on GNU/Linux

Next to doEdit

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

Problems and solutionsEdit

  • 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.

Other pageEdit

See alsoEdit