tags:

views:

596

answers:

8

Is there a way, in Linux, Windows, or preferably Mac OS X to take a bunch of PDF files and "chain them" into one "booklet" without owning Acrobat and preferably without doing this manually?

I have TexShop, MikTex and the like installed, if any of their utilities help.

A: 

Have a look at Multivalent Document Tools

Failing that you can search out other tools via Freshmeat.net

Michael MacDonald
A: 

I've mentioned it in the other topics and I'll mention it again: you can use the Ghostscript utilities pdf2ps and ps2pdf do it as so:

pdf2ps file1.pdf file1.ps  # Convert file1 to PostScript
pdf2ps file2.pdf file2.ps  # Convert file2 to PostScript
cat file2.ps >> file1.ps   # Concatenate files
ps2pdf file1.ps output.pdf # Convert back to PDF
Adam Rosenfield
**OMG !!** cat-ting different PostScript files like that will only work in exceptional circumstances... (It will more work more frequently than cat-ting two C++ programs and hope the compiler will still digest them, though.)
pipitas
+10  A: 

ghostcript method:

gs -q -sPAPERSIZE=letter -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=out.pdf in1.pdf in2.pdf in3.pdf ...

from: How to concatenate PDFs without pain

ImageMagick method:

convert file1.pdf file2.pdf file3.pdf out.pdf

pdftk method:

pdftk file1.pdf file2.pdf file3.pdf cat output out.pdf
Luis Melgratti
+3  A: 

I have tried several different tools and have gotten the most reliable results with the PDF toolkit, pdftk. It seems to work more consistently than trying to use gs or messing around with conversion to PostScript and back. And it avoids dealing with one image per page, which is a nuisance.

pdftk is included in Debian-based Linux distributions and perhaps others as well.

Norman Ramsey
+1  A: 

You can chain the "Get selected Items", "Combine PDF Pages", "Rename PDF Document" and "Move Finder Items" actions in Automator to create the desired workflow.

Pedro Henriques
A: 

I have also used Multivalent Java based tools. It is a simple invocation of Java MultiValent main program passing in each pdf file you want to append as arguments.

zkarthik
+1  A: 

If you want something cross-platform I suggest this: http://pybrary.net/pyPdf/

Giancarlo
+1  A: 

I had to recently research this and came up with the following. In the end I went with ImageMagick.

  1. Merging is hard! http://ansuz.sooke.bc.ca/software/pdf-append.php
  2. pdfjoin from the pdfjam package seems to be the standard on unix-like systems but not available on Windows
  3. Coherentpdf is multi-platform. However licences cost up to €700
  4. pdftk is multi-platform and open source. However it does appear to be 3 years old.
  5. Imagemagick will merge pdfs and also generate pdfs from jpgs. I know it works on Linux and Windows.
  6. PDFsam works using iText and Java
Brian Fenton
After a few weeks testing with ImageMagick, I found that the resultant PDFs were huge and also there was a loss of image quality in large images (or spreadsheets). After switching to pdftk, the quality and size issues were much improved, but we saw the occasional PDF that pdftk couldn't handle, probably due to its age.
Brian Fenton