Operações com PDF em linha de comando no Linux (comprimir, juntar, dentre outros)
Juntar PDF
Pode-se utilizar o comando pdfunite para juntar um ou mais pdf's em um único arquivo:
pdfunite file1.pdf file2.pdf file3.pdf output-file.pdf
No exemplo acima os arquivos file1, file2 e file3 foram colocados dentro do arquivo output-file.pdf. Também é possível utilizar caracteres coringa para adicionar uma quantidade muito grande de arquivos em um único pdf, no exemplo abaixo coloquei todos os arquivo em uma subpasta chamada pdf:
pdfunite pdf/* output-file.pdf
Comprimindo PDF
Utiliza-se o comando gs (ghostscript) para reduzir o tamanho total do pdf:
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -dColorImageResolution=150 -sOutputFile=PDF-compressed.pdf original-pdf.pdf
onde: -dPDFSETTINGS=/screen menor qualidade, tamanho menor. -dPDFSETTINGS=/ebook para qualidade melhor, mas tamanho do pdf aumenta significantemente. -dPDFSETTINGS=/prepress saída similar a opção "Prepress Optimized" do Acrobat Distiller. -dPDFSETTINGS=/printer seleciona saída similar a configuração "Print Optimized" do Acrobat Distiller. -dPDFSETTINGS=/default seleciona saída destinada a ser útil em uma ampla variedade de usos, possivelmente à custa de um arquivo de saída maior.
-dColorImageResolution=150 compressão padrão, semelhante a que é gerada pelo site smallpdf. -dColorImageResolution=100 maior redução da qualidade e do tamanho do pdf. -dColorImageResolution=50 ATENÇÃO redução muito grande na qualidade, deve-se verificar todas as páginas pois algumas pode se tornar ilegível em compensação o tamanho do arquivo diminui muito (NOTA: cheguei a reduzir um arquivo de 80 Mb para 11 Mb).