Follow me on App.net

miércoles, abril 25

separar y unir archivos PDF en Ubuntu con pdftk




pdftk es una aplicación muy útil y fácil de utilizar para separar y unir archivos PDF en la linea de comando de Ubuntu ( y cualquier distribución de linux ).
Aunque se que a muchos les asusta la línea de comandos y el terminal, realmente no es muy difícil de utilizar y con los ejemplos que veremos a continuación verán que fácil es separar y unir archivos y algunos métodos adicionales de como rotar las páginas en un PDF.

Instalación

Ubuntu ( también sirve en Debian o cualquier derivado de esta) :

sudo apt-get install pdftk
 
Fedora ( también sirve para CentOS y RedHat) :

sudo yum install pdftk
 
 
Eso es todo para la instalación
Para los siguientes ejemplos vamos a suponer como archivo principal archivo_grande.pdf y para los archivos a unir archivo1.pdf y archivo2.pdf
 

Como separar un Archivo PDF en una página por archivo

Si tenemos un archivo PDF que queremos separar en un archivo por cada página que contenga ejecutamos el siguiente comando:

pdftk archivo_grande.pdf burst
 
 
Esto nos dará como resultado un archivo por página en la misma carpeta donde ejecutamos el comando. Seran llamados algo como pg_0001.pdf, pg_0002.pdf …. si nuestro PDF tiene 10 páginas esto generará 10 archivos.
No se modificará el archivo principal.
Estoy suponiendo que estás ejecutando el comando en la carpeta donde está el archivo PDF, sino tendrás que colocar la ruta completa del archivo o moverte a la carpeta con el comando cd /ruta_del_archivo

Como Unir Dos Archivos PDF

Si lo que queremos es unir dos archivos, digamos por ejemplo archivo1.pdf y archivo2.pdf en un solo PDF ejecutamos el siguiente comando:

pdftk archivo1.pdf  archivo2.pdf output final.pdf
 
 
Este comando generará un nuevo archivo llamado final.pdf donde estará el contenido de archivo1 y archivo2 unido en el mismo orden que colocamos los archivos en el comando.
Si lo que queremos es unir todos los archivos PDF dentro de una carpeta ejecutamos

pdftk *.pdf cat output final.pdf
 
 
Un ejemplo más avanzado: Supongamos un caso donde tenemos un archivo de 10 páginas y queremos eliminar la primera y la quinta página. Para esto ejecutamos el siguiente comando:

pdftk archivo_grande.pdf cat 2-4 6-end output salida.pdf
 
 
Vamos a explicar el comando:
  1. archivo_grande es nuestro archivo PDF de 10 páginas en este caso.
  2. cat es para indicarle a pdftk que una lo que vamos a colocar a continuación.
  3. 2-4 es el rango de las páginas 2 a 4, ya que queremos eliminar la primera no la colocamos.
  4. Luego 6-end le indicamos que una lo anterior con la página de la 6 hasta el final, por lo que nos saltamos la página 5 que también queríamos eliminar.
  5. output salida.pdf , esta va a ser la salida de nuestro programa un nuevo archivo llamado salida.pdf.
Así podemos eliminar páginas que no queramos de algún documento.
También podemos ponernos más creativos y unir diferentes páginas de dos archivos distintos. Supongamos queremos de archivo1 las páginas del 1 al 3 y unir eso con las páginas del 6 al 9 del archivo2. Tenemos que usar “alias” que es darle un nombre corto a nuestros archivos el comando sería:

pdftk A=archivo1.pdf B=archivo2.pdf cat A1-3 B6-9 output salida.pdf
 
 
Eso es todo aquí vamos a generar un nuevo archivo llamado salida.pdf con las páginas que dijimos del 1 al 3 de archivo1 y del 6 al 9 de archivo2. Bastante poderoso no?. Nota que utilizamos A y B como los alias para los archivos!

Adicional : Rotar páginas de un Archivo PDF

Tenemos varias opciones de rotación podemos rotar la primera página 90 grados ejecutando:

pdftk archivo1.pdf cat 1E 2-end salida.pdf
 
 
Aquí con la opción E delante del número de página que queremos rotar, hace un giro de la página de 90 grados luego usamos 2-end para volverla a unir al resto del documento y generar el archivo salida.pdf.
Si queremos rotar 180 grados ejecutamos

pdftk archivo1.pdf cat 1S 2-end salida.pdf
 
 
Lo mismo que el anterior pero utilizando la opción S delante de la página que queremos rotar.
Si queremos rotar todo el documento utilizamos 1-endE o S según sea el caso.
pdftk tiene algunas opciones adicionales, como por ejemplo proteger un archivo con contraseña, llenar formas, intentar reparar archivos dañados.  Puedes encontrar estas opciones ejecutando:

man pdftk
 
 
También pueden conseguir información adicional (en inglés) aquí:

http://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/

Ir arriba Ir abajo