Jak przekonwertować dokument DjVu na format PDF w systemie Linux przy użyciu tylko narzędzi wiersza poleceń?

46

Mam kilka dokumentów w DjVu, które chciałbym przekonwertować do formatu PDF. Czy można to zrobić za pomocą narzędzi OSS z wiersza poleceń?

GeneQ
źródło

Odpowiedzi:

41

djvu2pdf powinien pasować do rachunku, to mały skrypt, który korzysta z zestawu narzędzi djvulibre. Jeśli nie, istnieją inne metody wymagające wielu narzędzi wiersza polecenia.

John T.
źródło
Szkoda, że ​​obecnie nie ma narzędzia djvu2pdf w Arch repo i starej wersji w Arch User repo
Grzegorz Wierzowiecki,
Instalacja djvulibre-binprzy użyciu apt-get, a następnie instalacja pliku deb w tym łączu załatwiła sprawę.
thameera
Na komputerze Mac można korzystać djvu2pdfza pośrednictwem MacPorts.
Ioannis Filippidis
24

ddjvuProgramu (który jest częścią standardowego djvulibre pakietu), będzie to zrobić:

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

Ostrzeżenie: powoduje to powstanie dużych plików (ale pliki PDF utworzone przez skrypt Christopha Siegharta mają ten sam rozmiar).


bashKilka lat temu napisałem również następujący mały skrypt. Robi to samo automatycznie. (Zapisz to jako djvu2pdf.sh).

#!/bin/bash

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

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

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

djvu2pdfSkrypt Christoph Sieghart ma zasadniczo takie same

Maksyma
źródło
2
Czy istnieje sposób na przeniesienie warstwy OCR DjVu do pliku PDF?
Geremia,
19

Co powiesz na proste użycie DJView i eksportowanie jako PDF?

  1. Goto Synaptic Package Manager (System - Administracja - Synaptic Package Manager)
  2. Zainstaluj DJview4
  3. Uruchom DJview (Aplikacje - Grafika - DJView4)
  4. Otwórz dokument .djvu
  5. Menu - Eksportuj jako: PDF

Spójrz na http://art.ubuntuforums.org/showthread.php?t=1232038

Toto
źródło
2
To jest lepsze i łatwiejsze rozwiązanie, dzięki!
woohoo,
Pytanie dotyczyło tylko korzystania z wiersza poleceń, więc można to zautomatyzować.
Maxim
10

Jeśli nie zależy Ci na kolorach i obrazach, możesz uzyskać znacznie mniejsze pliki, jeśli upuścisz kolory i użyjesz:

ddjvu -format=pdf -mode=black input.djvu output.pdf

Teksty, kody i formuły wyglądają idealnie, ale większość obrazów zniknęła

Marcello
źródło
7
$ djvups input.djvu | ps2pdf - output.pdf

W moim przypadku plik wyjściowy był 10 razy mniejszy niż w przypadku ddjvu. Zarówno djvupsi ps2pdfobecne w repozytorium ubuntu.

$ sudo apt-get install djvulibre-bin ghostscript

Znalazłem tę metodę man ddjvu, więc zawsze czytaj instrukcje;)

Alternatywny sposób na utworzenie pliku PDF polega na pierwszym użyciu djvups (1) i przekonwertowaniu wynikowego pliku PostScript na PDF. To, która metoda daje lepsze wyniki, zależy od zawartości pliku DJVU i możliwości konwertera PS na PDF.

raacer
źródło
+1 za zachowanie dowolnej warstwy tekstowej w pliku djvu
Plazma
1

Trochę zmieniłem skrypt @Maxim ...

#!/bin/bash
# convert DjVu -> PDF
# usage:  djvu2pdf.sh [-q quality | -b] <infile.djvu> [outfile.pdf]

mode='color'
quality=80

aparse() {
  while [ $# != 0 ] ; do
    case "$1" in
    -q|--quality)
      quality=${2}
      shift
      ;;
    -b|--black)
      mode='black'
      ;;
  esac
  shift
done
}
aparse "$@"

i="$1"
o=${2:-$(basename $i .djvu).pdf}
if [ -f  "$o" ]; then 
  echo "file $o exists, override [Y/n]?"
  read ans
  case "$ans" in 
   n|N) exit 1;;
  esac
fi
echo "[ converting $i to $o ] "

cmd="ddjvu -format=pdf -quality=$quality -mode=$mode -verbose $i $o "

echo "[ executing $cmd ] "
$cmd
hute37
źródło
1

Dla użytkowników MacOS możesz zainstalować djvu2pdf w następujący sposób:

$brew install djvu2pdf 

Jak go używać (działa na każdym systemie podobnym do Xnix):

$djvu2pdf nameBook.djvu nameBookToCreate.pdf
andreskwan
źródło