Como insiro uma página em branco em um PDF com ghostscript ou pdftk?


13

Eu tenho um arquivo PDF que precisa de uma página em branco inserida nele de vez em quando. O padrão é imprevisível, por isso preciso de um comando que permita que eu o encaixe sempre que necessário.

Como posso fazer isso?

Respostas:


14

De http://blog.chewearn.com/2008/12/18/rearrange-pdf-pages-with-pdftk/

pdftk A=src.pdf B=blank.pdf cat A1 B1 A2-end output res.pdf

Espero que você goste desse script, salve-o como pdfInsertBlankPageAt.sh, adicione permissões de execução e execute.

./pdfInsertBlankPageAt 5 src.pdf res.pdf

#!/bin/bash
if [ $# -ne 3 ]
then
  echo "Usage example: ./pdfInsertBlankPageAt 5 src.pdf res.pdf"
  exit $E_BADARGS
else
  pdftk A=$2 B=blank.pdf cat A1-$(($1-1)) B1 A$1-end output $3
fi 

cat A1 B1 A2-endsignifica que o arquivo de saída conterá a primeira página do documento A ( src.pdf) seguida pela primeira página do documento B ( blank.pdf) seguida pelo restante (páginas 2 ao final) do documento B. Essa operação é chamada concatenação, o Linux caté muito usado para exibir texto, mas é interessante quando usado com mais de um argumento.

Para criar blank.pdf, consulte Como criar um PDF em branco na linha de comando?


Sugiro adicionar uma pequena explicação sobre o que o comando faz, qual efeito ele tem (por exemplo, onde a página em branco é inserida). Além disso, você pode adicionar uma maneira conveniente de como criar um arquivo pdf com apenas uma página em branco.
maxschlepzig

7
Encontrei hoje o seguinte comando para criar uma página em branco usando a linha de comando:echo "" | ps2pdf -sPAPERSIZE=a4 - pageblanche.pdf
remjg

O link está morto :(
Weboide

Ao tentar inserir uma página em branco no início do documento (Página 1), recebo o seguinte erro: Erro: Fim do intervalo inesperado; esperava um número de página ou palavra-chave legal, aqui: A1 Saindo. Erros encontrados. Nenhuma saída criada. Feito. Erros de entrada, portanto, nenhuma saída criada.
bwright
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.