Tenho um documento com várias páginas impressas em frente e verso para digitalizar com um scanner linear em massa. Portanto, como resultado, recebo 2 arquivos PDF: um contendo todas as páginas ímpares e o segundo contendo todas as páginas pares. Eu preciso mesclá-los da maneira natural:
1. <- 1.1. (odd.pdf page 1 to result.pdf page 1)
2. <- 2.1. (even.pdf page 1 to result.pdf page 2)
3. <- 1.2. (odd.pdf page 2 to result.pdf page 3)
4. <- 2.2. (even.pdf page 2 to result.pdf page 4)
etc.
CAM::PDF
, darei um script mais tarde. Os dois pdf têm a mesma contagem de páginas?Respostas:
Veja os comandos
pdfseparate
epdfunite
depoppler-utils
. O primeiro para separar as páginas de cada documento em arquivos individuais e o segundo para mesclá-las na ordem desejada em um novo documento.Observe também que, como os scanners fornecem imagens rasterizadas de qualquer maneira (que algumas como a sua podem concatenar em arquivos PDF), talvez você possa configurá-lo para gerar imagens (png, tiff ...) e fazer a concatenação em um PDF com ImageMagick.
fonte
O pdftk possui um comando aleatório que agrupa as páginas:
fonte
Apenas uma
bash
foto rápida usandopdfjam
:Crie uma matriz de argumentos de entrada:
Isso deve permitir que você o use como lista de entrada para
pdfjoin
:fonte
pdfjoin
é um script de wrapper em torno dopdfjam
qual ele próprio é um script de wrapper em torno dopdfpages
pacote LaTeX (e pdflatex); portanto, significa que ele traz o LaTeX como uma dependência.Você pode usar o módulo Mix no PDFsam Basic (de código aberto e gratuito) ou on-line usando o recurso Alternate & Mix no Sejda
fonte
Eu estava procurando fazer basicamente a mesma coisa, e a resposta de Stéphane Chazelas foi muito útil. Faço isso com frequência suficiente para escrever um script Python simples para automatizar as coisas, usando os comandos que ele sugeriu. Por padrão, ele reverte a ordem das páginas pares, mas isso pode ser suprimido com um sinalizador de linha de comando.
A pergunta é meio antiga, então espero que as necessidades do solicitante original já tenham sido atendidas. No entanto, é possível que o script seja útil para as pessoas que chegarem aqui no futuro, então eu o coloquei abaixo.
fonte
Me deparei com esse script do bash fazendo isso, ele pressupõe que você digitalizou as páginas pares na ordem inversa, mas você pode alterar isso removendo o
-r
ditado na linhaevenpages=($(ls "$evenbase-$key-"* | sort -r))
(esta é a linha 46)Fonte
fonte