Marca de agua en pdfs con pdftk

Este curso he decidido cambiar la licencia CC-BY de las diapositivas que uso en las clases a la CC-BY-NC-SA. Personalmente, me encantaría que en el departamento en que trabajo existiese algo así como un banco de diapositivas. No sería para quitarnos trabajo, sino para partir de un punto ya dado, y mejorarlo y actualizarlo cada año con el toque personal de cada cual. Pero mi experiencia es que poca gente comparte sus diapositivas con CC-BY y que a la gente le cuesta compartirlas.

También, he decidido añadir una marca de agua en la que pone "Material docente" y mi nombre. La siguiente, por ejemplo, es una diapositiva de un tema que doy sobre privacidad y seguridad y gestión de contraseñas en una asignatura sobre introducción a las tecnologías en información y documentación:

Se trata de una diapositiva como ejemplo

Las diapositivas son muy lineales porque uso de modelo una estilo de la universidad. Yo las hago con Libreoffice Writer poniendo la hoja apaisada con un pie y encabezado donde meto lo de la licencia. Me resulta más sencillo y directo hacerlas con Writer.

Para la marca de agua, ejecuto esta orden en la terminal de mi Debian 12 estando en la carpeta en que está el pdf de la presentación sin marca de agua, y la marca de agua la tengo definida en un pdf en una ruta concreta de mi máquina:

#!/bin/bash

output_folder="watermark" # Nombre de la carpeta de salida
watermark="/ruta/al/pdf/con/la/watermark.pdf"

mkdir -p "$output_folder"

for input_file in *.pdf; do
filename_no_extension=$(basename "${input_file%.*}")
output_file="$output_folder/$filename_no_extension.pdf"

pdftk "$input_file" multistamp "$watermark" output "$output_file"
done

Lo que hace exactamente esta orden es crear una carpeta que se llama watermark, y en ella, crea cuantos pdf haya en la carpeta en que estamos pero añadiendo la marca de agua a todas las páginas, todo con el mismo nombre de archivo. Para ejecutar eso, tengo un comando tipo tecla rápida que me copia todo al portapapeles pulsando alt-shift-w y gracias a xclip:

echo "#!/bin/bash

output_folder=\"watermark\" # Nombre de la carpeta de salida
watermark=\"/ruta/al/pdf/con/la/watermark.pdf\"

mkdir -p \"\$output_folder\"

for input_file in *.pdf; do
filename_no_extension=\$(basename \"\${input_file%.*}\")
output_file=\"\$output_folder/\$filename_no_extension.pdf\"

pdftk \"\$input_file\" multistamp \"\$watermark\" output \"\$output_file\"
done
" | xclip -sel clip

Para lo anterior hay que tener instalado pdftk y xclip con un sudo apt.

Publicado el 12 diciembre de 2023 por Pedro Lázaro Rodríguez; con licencia Creative Commons CC BY-NC-SA 4.0 y en la categoría "Software Libre"

Volver al top de la página