Пытаюсь удалить или изменить метаданные PDF (автор, тайтл и т.д.). Делаю это через утилиту
pdftk, и все прекрасно получается. Но заминка происходит в PHP. Я хочу реализовать такой вот простой алгоритм, не прибегая к созданию файлов на диске:
1. Получаю метаданные PDF и складываю их в массив:
exec("pdftk $pdffile dump_data output", $result);
2. Меняю метаданные нужным мне способом в массиве.
3. Пытаюсь подать эти метаданные под видом текстового файла, в том же виде, в каком принял их:
$sh = popen("pdftk $pdffile update_info - output $resultpdf", "w");
fwrite( $sh, implode(PHP_EOL, $result) );
pclose($sh);
Но метод не срабатывает, метаданные в
$resultpdf остаются теми же, что и раньше. Хотя в терминале (с применением файлов) подобная команда работает на ура. Предвосхищая вопрос — да, pdftk поддерживает ввод через stdin.