it-swarm-eu.dev

Come unire pdf: s usando Imagemagick (problema di risoluzione)

Quando provo a unire due file .pdf usando Imagemagick

convert pdf1.pdf pdf2.pdf temp.pdf

il file temp.pdf risultante sembra avere una risoluzione molto bassa. Come posso mantenere la risoluzione come nei file sorgente?

41
jraja

Barns ha ragione, ma se pdftk non ha funzionato, prova ghostscript.

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=temp.pdf pdf1.pdf pdf2.pdf
49
Sebastian Liem

Il comando di conversione di Imagemagick viene normalmente utilizzato per convertire i file di immagine da un formato a un altro e, in questo caso, è possibile che esegua effettivamente una conversione interna prima di emettere le due "immagini" (PDF) in un singolo file.

Ti suggerirei di prendere in considerazione l'utilizzo del PDF Toolkit (pdftk) invece http://www.accesspdf.com/pdftk/

Dagli esempi sul sito web, questo dovrebbe essere semplice come:

pdftk pdf1.pdf pdf2.pdf cat output temp.pdf
19
Richard

Se tutti i file che si desidera unire si trovano nella stessa cartella:

convert -density 150 $(ls -rt *pdf) output.pdf

l'argomento -density 150 mantiene la qualità dei PDF uniti.

17
juda

Ho sempre dimenticato come fare questo e trovare questa domanda prima quando cerco.

convert -density 600 file1.pdf file2.pdf -resize 50% new.pdf

L'esempio collegato ha la densità a 144, tuttavia, che non è mai stato abbastanza alto da non apparire pixelato.

http://web.archive.org/web/20130311071316/http://studio.imagemagick.org/pipermail/magick-users/2009-September/022958.html

8
Leslie Pajuelo

Se stai usando linux puoi provare anche poppler che fornisce pdfunite che concatena senza modificare la risoluzione.

3
haytona

Non sono riuscito a trovare alcun modo di unire due file PDF insieme mantenendo la risoluzione buona e il testo intatto, ma ho trovato un modo per convertirlo in un file png ad alta risoluzione.

pdftoppm -f 1 -l 1 -aa yes -aaVector yes -png -r 300 page.pdf > tmp1.png
pdftoppm -f 2 -l 2 -aa yes -aaVector yes -png -r 300 page.pdf > tmp2.png
convert tmp1.png tmp2.png +append -quality 100 page.png

Questo porta alle prime due pagine di page.pdf e le unisce in un file png ad alta risoluzione affiancato.

Modifica dell'ultima riga su

convert tmp1.png tmp2.png +append -quality 100 page.pdf

risulterà in un output di documento pdf come ho capito dopo aver fatto confusione con pngtopnm, pnmtops, ps2pdf.

0
Barry Dmytro