¿Cómo inserto una página en blanco en un PDF con ghostscript o pdftk?


13

Tengo un archivo PDF que necesita una página en blanco insertada de vez en cuando. El patrón es impredecible, por lo que necesito un comando que me permita ajustarlo cuando sea necesario.

¿Cómo puedo hacer esto?

Respuestas:


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 te guste este script, solo guárdalo como pdfInsertBlankPageAt.sh, agrega permisos de ejecución y ejecuta.

./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 el archivo de salida contendrá la primera página del documento A ( src.pdf) seguido de la primera página del documento B ( blank.pdf) seguido del resto (páginas 2 al final) del documento B. Esta operación se llama concatenación, Linux catse usa con mucha frecuencia para mostrar texto, pero es interesante cuando se usa con más de un argumento.

Para crear blank.pdf, vea ¿Cómo creo un PDF en blanco desde la línea de comando?


Sugiero agregar una pequeña explicación de lo que hace el comando, qué efecto tiene (por ejemplo, dónde se inserta la página en blanco). También podría agregar una manera conveniente de cómo crear un archivo pdf con solo una página en blanco.
maxschlepzig

77
Hoy encontré el siguiente comando para crear una página en blanco usando la línea de comando:echo "" | ps2pdf -sPAPERSIZE=a4 - pageblanche.pdf
remjg

Link está muerto :(
Weboide

Al intentar esto para insertar una página en blanco al comienzo del documento (Página 1) obtengo el siguiente error: Error: Fin de rango inesperado; esperaba un número de página o palabra clave legal, aquí: A1 Saliendo. Errores encontrados No se creó salida. Hecho. Errores de entrada, por lo que no se creó ninguna salida.
bwright
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.