Sunteți pe pagina 1din 10

10 operaciones útiles con archivos PDF

Manz | 8 comentarios | software

Los ficheros PDF se han convertido prácticamente en el formato de documentos más


extendido y cómodo.

Aunque las impresoras virtuales (y conversores PDF) han facilitado mucho las tareas de
creación de documentos PDF, a veces se requiere un mayor grado de control sobre el
archivo PDF, que facilite más posibilidades e incluso ofrezca la posibilidad de automatizar
tareas para realizar sobre múltiples archivos.

The PDF Toolkit (a partir de ahora, Pdftk) es una utilidad con licencia GPL disponible
para entornos Windows y Linux, que permite realizar tareas sobre archivos PDF desde una
línea de comandos con un alto grado de control y posibilidades, como demostraré con las
siguientes 10 operaciones útiles con archivos PDF:

1. Añadir páginas a un documento PDF existente


Es posible añadir (concatenar) páginas o documentos PDF a otros documentos PDF de una
forma muy sencilla, utilizando la opción cat de Pdftk.

pdftk portada.pdf capitulo1.pdf capitulo2.pdf cat output libro.pdf

En este ejemplo, creamos un archivo libro.pdf que estará formado por la portada
(portada.pdf) y los dos primeros capítulos (capitulo1.pdf y capitulo2.pdf).

2. Extraer solo las páginas impares de un documento

Es posible extraer las páginas impares de un documento haciendo uso del atributo odd (o
even si buscamos las pares). Veamos con un ejemplo:

pdftk documento.pdf cat 1-15odd output paginas-impares.pdf

Este ejemplo extrae las páginas impares (odd) de las primeras 15 páginas (1-15) del archivo
documento.pdf, guardándolas en paginas-impares.pdf.

3. Rotar páginas específicas de un documento PDF

Con Pdftk es posible rotar ciertas páginas de un documento PDF (o el documento íntegro,
es decir, todas sus páginas). Para ello, sólo tenemos que añadir una letra que representará
los grados de rotación:

 N: 0 grados (sin efecto, por defecto).


 E: 90 grados.
 S: 180 grados.
 W: 270 grados.

pdftk documento.pdf cat 1-endE output documento-rotado.pdf

En este ejemplo se rota el documento íntegro (1-end) realizando una rotación de 90 grados
(E). Todo ello se guarda en documento-rotado.pdf.
4. Invertir el orden de paginas de un documento PDF

También es posible invertir o alterar el orden de páginas de un documento PDF. Para ello
sólo hay que especificar el orden a seguir tras la opción cat, en este caso, creamos un
documento con orden inverso.

pdftk documento.pdf cat end-1 output inverso.pdf

5. Separar PDF en páginas individuales

Esta opción separa el documento PDF, creando cada página en un documento individual.
Puede ser útil para ser sometido a una ordenación manual posterior.

pdftk documento.pdf burst pagina_%02d.pdf

Esto creará varios archivos llamados pagina_01.pdf, pagina_02.pdf, pagina_03.pdf y así


sucesivamente. Esto es así porque en %02d estamos indicando que se generen en formato
pagina_XX.pdf. Si utilizaramos %04d lo haría con el formato pagina_XXXX.pdf.

6. Establecer una marca de agua en un documento PDF

Es posible indicar una página (se utilizaría siempre la primera del documento
marcadeagua.pdf) que se utilice de marca de agua en el fondo de documento.pdf,
guardándose en el fichero de salida documento-con-marcadeagua.pdf.

pdftk documento.pdf background marcadeagua.pdf output documento-con-


marcadeagua.pdf

Si utilizamos la opción multibackground en lugar de background, en lugar de utilizar


siempre la primera página a modo de marca de agua, se utilizará la página correspondiente
(en la página 1, se utilizará la marca de agua de la página 1, en la página 2, la marca de
agua de la página 2, y así sucesivamente).

7. Estampar una imagen al frente del documento

Del mismo modo que se puede establecer una marca de agua al fondo del documento,
puede utilizarse de imagen solapada al frente del documento. Para ello usaremos la opción
stamp en lugar de la anterior background.

pdftk documento.pdf stamp stamp.pdf output documento-final.pdf

Además, también tiene la opción análoga de utilizar multistamp con el mismo fin del
apartado anterior.

8. Extraer metadatos de un PDF

Con la opción dump_data es posible extraer los metadatos de un documento PDF.


pdftk modelo.pdf dump_data InfoKey: Creator
InfoValue: PScript5.dll Version 5.2.2
InfoKey: Title
InfoValue: Modelo-2011.doc
InfoKey: Author
InfoValue: Manz
InfoKey: Producer
InfoValue: GPL Ghostscript 8.15
InfoKey: ModDate
InfoValue: D:20110802001750
InfoKey: CreationDate
InfoValue: D:20110802001750
PdfID0: dddaf390803d32715f78627d2c1d2dc
PdfID1: dddaf390803d32715f78627d2c1d2dc
NumberOfPages: 1

Ademas existen varias opciones de la misma familia como dump_data_utf-8 para realizar
la misma tarea con información con codificación UTF-8, o update_info para cambiar
metadatos.

9. Reparar PDF corruptos o dañados

El parseador interno de Pdftk es capaz de procesar el documento PDF y reestructurar las


tablas y flujos del archivo PDF y reparar archivos dañados o corruptos (siempre que sea
posible). Para ello no hay más que escribir lo siguiente:

pdftk documento-corrupto.pdf output documento-reparado.pdf

10. Dividir o separar PDF compuestos por varias páginas

Por último, vamos a poner un ejemplo (un poco más avanzado) de la combinación de varias
de estas tareas para realizar algo más complejo.

Tenemos un documento que incorpora varias páginas o diapositivas en una misma página
del documento. Nuestra intención es separarlas y recomponer un documento PDF
tradicional como se ve en la imagen. Para ello también haremos uso de GhostScript.
Parte 1

En primer lugar, utilizaremos el GhostScript (en mi caso he usado gswin64c porque


dispongo de un equipo de 64 bits) para realizar la división de páginas:

gswin64c -f documento.pdf -sDEVICE=pdfwrite -g3750x9210 -c "<</PageOffset


[0 0]>> setpagedevice" -o left-pages.pdf

Con este primer comando, indicamos a GhostScript el tamaño del documento (3750x9210),
dividiendo las páginas de la izquierda y guardándolas en el documento left-pages.pdf (que
serían las páginas impares).

La parte del desplazamiento (PageOffset) en este caso no está realizando ninguna acción,
eso lo veremos ahora...

gswin64c -f documento.pdf -sDEVICE=pdfwrite -g3750x9210 -c "<</PageOffset


[-430 0]>> setpagedevice" -o right-pages.pdf

Realizamos la tarea análoga con respecto a las páginas de la derecha (las páginas pares).
Aquí si utilizamos un valor de desplazamiento -430, que moverá la región a recortar.

Parte 2

Llegados a este punto, tenemos dos documentos PDF, uno con las páginas impares y otro
con las páginas pares. Sólo necesitaríamos unirlos en un mismo documento.

pdftk A=left-pages.pdf B=right-pages.pdf shuffle A B output documento-


final.pdf

Para ello hemos utilizado la opción shuffle, que en lugar de concatenar como lo hace cat
(documento íntegro A seguido del documento íntegro B), va haciéndolo página por página
(página 1 de A, página 1 de B, página 2 de A, página 2 de B...).

En la documentación oficial de Pdftk pueden verse más opciones y funciones interesantes


para utilizar con documentos PDF.

Más sobre el autor

Escrito por José Román (a.k.a. Manz), estudiante de Ingeniería Informática en la ULL y
residente en Santa Cruz de Tenerife.

Relacionados

Estadísticas Relacionados Anteriormente Tweets


15 aplicaciones gratis para recuperar archivos borrados

Thumbs.db ¿Qué es?

Pasar a PDF

ExFAT, sistema de ficheros para pendrive


El paso del tiempo en 20 aplicaciones

32 editores gráficos gratuitos

8 comentarios

Una forma de reemplazar la parte 2 del último punto con operaciones análogas, podría ser
la siguiente:

pdftk left-sections.pdf burst output %03d_L.pdf


pdftk right-sections.pdf burst output %03d_R.pdf
pdftk *_?.pdf cat output combinado.pdf

En la primera línea, separamos cada página del documento de páginas impares con el
formato 001_L.pdf, 002_L.pdf, 003_L.pdf, etc... En la segunda, lo mismo con las páginas
pares: 001_R.pdf, 002_R.pdf, 003_R.pdf, etc...

En la tercera línea aprovechamos que el orden alfabético de los archivos al utilizar un


comodín (*_?.pdf) sería 001_L.pdf, 001_R.pdf, 002_L.pdf, 002_R.pdf, etc... y unimos
todas las páginas en un documento llamado combinado.pdf.

Obviamente, la parte 2 especificada en el artículo es más eficiente y rápida, pero es un


buen ejemplo para ver otras formas de realizarlo.
Manz · hace 7 meses

Responder Permalink URL


Autor

Chrome 12.0.742.122 / Windows 7

Algunos de estos procesos tambien son posibles con pdfcreator poniendo la impresora
virtual en pausa y luego cambiando de orden las paginas.

Hay que reconocer que la herramienta que comentas es muy potente aunque se encuentra a
faltar un entorno grafico.

kutastre · hace 7 meses

Responder Permalink
Motor WebKit 4.0 / Android 2.2 Froyo

@kutastre: Realmente, la potencia de esta herramienta (y todas las que proporcionan una
línea de comandos) es la posibilidad de automatizar y realizar tareas para un alto número
de archivos (por ejemplo, una colección de 150 archivos PDF).

Manz · hace 7 meses

Responder Permalink URL


Autor

Chrome 12.0.742.122 / Windows 7

@kutastre: Ese es el punto importante, algunos de los procesos, desconozco si existen todas
las opciones con pdf creator pero me imagino que eso no es todo lo que puede hacer pdftk,
y para quienes quieren saber como se usa, me parecen muy bien estos 10 puntos, sencillos
pero dan pie a quien desee aprender más a que experimente con ellos, además que son los
puntos concretos que más se suelen necesitar cuando trabajas con pdf, gracias por este muy
buen post
zurdo · hace 7 meses

Responder Permalink URL


Mozilla Firefox 5.0 / Windows 7

Esta increíble su blog me gustan mucho como ha ordenado en el lateral izquierdo los
botones de compartir.

Jonathan · hace 7 meses

Responder Permalink URL


Chrome 13.0.782.107 / Windows 7

Acabo de descubrir tu blog y no me perdono no haberlo encontrado antes... muy


interesantes tus post

David · hace 7 meses

Responder Permalink URL


Chrome 12.0.742.122 / Windows 7

Interesante :D

trukete · hace 7 meses

Responder Permalink URL


Mozilla Firefox 5.0 / Linux
Perdón por mi ignorancia, pero ¿es esto una novedad?. Vista Previa de OS X lo hace desde
hace muchos meses (al menos desde Snow Leopard) y con Automator se construyen flujos
de trabajo para lotes de archivos muy fácilmente.

Aurelio · hace 6 meses

Responder Permalink URL

Más información en http://www.emezeta.com/articulos/10-operaciones-utiles-con-archivos-


pdf#ixzz1nkL0LrXD

S-ar putea să vă placă și