Dividir documento PDF da linha de comando no Linux?

6

Gostaria de extrair intervalos de páginas de um documento PDF em um novo documento PDF usando a linha de comando no Linux. Note que:

$ pdftk input.pdf cat 1 verbose output output.pdf
Error: Failed to open PDF file: 
   input.pdf
Errors encountered.  No output created.
Done.  Input errors, so no output created.

Acontece que " Você (deve) saber que o Pdftk é nada mais do que uma versão muito antiga de iText .... As palavras-chave na declaração acima são "MUITO VELHAS". "(de pdftk não pode abrir arquivo pdf )

$ java -classpath /path/to/Multivalent20091027.jar tool.pdf.Split -page 1 input.pdf
Exception in thread "main" java.lang.NoClassDefFoundError: tool/pdf/Split
Caused by: java.lang.ClassNotFoundException: tool.pdf.Split
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: tool.pdf.Split.  Program will exit.

Acontece que este é um software complicado: mesmo se estiver no SourceForge, e diz que " Practical Thought fornece generosamente essas ferramentas para uso livre na linha de comando " aqui - no entanto, aqui então diz: " O navegador é open source. As ferramentas de documento são um bônus livre e não open source. " ... que finalmente esclarece o comentário de conversion - colagem de documentos PDF (imposição) - estouro de pilha :

All releases of Multivalent linked from the official sourceforge site are missing the tools package.

( edite: parece haver uma versão antiga do Multivalent com as ferramentas incluídas, veja o link do SO, mas como se parece um pouco com o abandonware, eu prefiro não usá-lo )

  • Finalmente, eu gostaria de evitar ferramentas que são essencialmente front-ends para o Latex, como PDFjam

Existem algumas opções para essa ferramenta de linha de comando de divisão de PDF no Linux?

    
por sdaau 10.10.2011 / 21:35

2 respostas

7

Acho pdfseparate muito conveniente para dividir intervalos em páginas individuais. Esse comando extrairia as páginas de 1 a 5 de input.pdf nos arquivos chamados output-page1.pdf , output-page2.pdf , ...

pdfseparate -f 1 -l 5 input.pdf output-page%d.pdf

Se você quiser recombinhá-los em intervalos de páginas, por exemplo, de 1 a 3 em um documento e de 4 a 5 em outro, use o programa complementar, pdfunite, da seguinte forma:

pdfunite output-page1.pdf output-page2.pdf output-page3.pdf final-pages1-3.pdf
pdfunite output-page4.pdf output-page5.pdf final-pages4-5.pdf

Eu acredito que essas ferramentas são parte do poppler e podem já estar instaladas no seu sistema.

    
por 02.02.2016 / 04:32
3

Vou colocar isso como uma resposta, para não entupir a pergunta: aqui está um link relacionado em unix.se:

... e a resposta aceita usa um script Python com o PyPDF (mas essa resposta implementa uma divisão de uma página em duas - e esse script precisa ser modificado para intervalos de páginas, para que funcione conforme solicitado no OP).

EDIT: Acabei de encontrar isso: Grampeador - Um utilitário python para manipular documentos PDF com base em pypdf (Página 3) / Contribuições da comunidade / Fóruns do Arch Linux ; que é, aparentemente " Um pequeno utilitário que faz uso da biblioteca pypdf para fornecer uma alternativa (um pouco) mais leve ao pdftk " (note que a lista de discussão, no entanto, observa alguns problemas com ela ...

  • há também PDF-Shuffler baseado em pypdf ; mas esse é apenas GUI - não tem um modo de linha de comando ...
por 10.10.2011 / 21:57