Я смог собрать воедино это решение.
flattenpdf() { if [[ $# -ne 2 ]] then echo "Usage: flattenpdf input.pdf output.pdf" return 1 fi temp=$(mktemp) pdftk "$1" generate_fdf output $ pdftk "$1" fill_form $ output "$2" flatten rm $ }
Он использует pdftk для генерации файла fdf из заполненного pdf, а затем использует этот файл во втором прогоне, чтобы сгладить его. Почему pdftk не делает что-то подобное, во-первых, мне не под силу.