Estoy intentando encontrar una solución para aplanar archivos PDF con campos ya completados en una línea de comando de Linux. Al principio estaba jugando con GhostScript, pero descubrí que tendía a convertir todos los datos de campo en caracteres basura.
Cuando ejecuto este comando
pdftk foo.pdf output bar.pdf flatten
y lo abre bar.pdf
en un lector de PDF, está aplanado, pero los datos que estaban en los campos simplemente no están presentes. El PDF es igual que si no estuviera completado, menos los campos que se pueden completar.
¿Hay algo que me falta aquí?
Todas las soluciones que encuentro en Google consisten en rellenar formularios vacíos con .fdf
archivos, lo que realmente no se aplica a mi situación.
Respuesta1
Pude armar esta solución.
flattenpdf() {
if [[ $# -ne 2 ]]
then
echo "Usage: flattenpdf input.pdf output.pdf"
return 1
fi
temp=$(mktemp)
pdftk "$1" generate_fdf output ${temp}
pdftk "$1" fill_form ${temp} output "$2" flatten
rm ${temp}
}
Utiliza pdftk para generar un archivo fdf a partir del pdf completado y luego usa ese archivo en una segunda ejecución para aplanarlo. No entiendo por qué pdftk no hace algo como esto en primer lugar.