How do I convert a DjVu document to PDF in Linux using only command line tools?

Solution 1:

djvu2pdf should fit the bill, it's a small script that makes use of the djvulibre toolset. If not, there are other methods that require multiple command-line tools.

Solution 2:

The ddjvu program (which is part of the standard djvulibre package) will do this:

$ ddjvu -format=pdf -quality=85 -verbose a.djvu a.pdf

Warning: this produces large files (but PDF files made by Christoph Sieghart's script are of the same size).


I also wrote the following small shell script some years ago.  It does the same automatically. (Save this as djvu2pdf.sh.)

#!/bin/sh

# convert DjVu -> PDF
# usage:  djvu2pdf.sh  <file.djvu>

i="$1"
echo "------------ converting $i to PDF ----------------";
o="$(basename "$i" .djvu).pdf"
echo "[ writing output to $o ] "

ddjvu -format=pdf -quality=85 -verbose "$i" "$o"

The djvu2pdf script by Christoph Sieghart does essentially the same.

Solution 3:

What about simply using DJView and export as PDF?

  1. Goto Synaptic Package Manager (System - Administration - Synaptic Package Manager)
  2. Install DJview4
  3. Run DJview (Applications - Graphics - DJView4)
  4. Open your .djvu document
  5. Menu - Export As: PDF

Look at http://art.ubuntuforums.org/showthread.php?t=1232038

Solution 4:

$ djvups input.djvu | ps2pdf - output.pdf

In my case the output file was 10x smaller than with ddjvu. Both djvups and ps2pdf present in ubuntu repository.

$ sudo apt-get install djvulibre-bin ghostscript

I've found this method in man ddjvu, so always read manuals ;)

An alternate way to produce PDF file consists in first using djvups(1) and convert the resulting PostScript file to PDF. Which method gives better results depends on the contents of the DJVU file and on the capabilities of the PS to PDF converter.