У меня есть скрипт PHP, который генерирует изображения из страниц PDF с помощью PHP Imagick. В котором я записываю часть данных поверх изображения, используя функцию annotateImage, и беру ее в качестве вывода. Это не удается в последнее время при выборе некоторых изображений PDF. Я имею в виду, что когда в качестве входных данных для этой программы задан конкретный PDF, функция annotateImage не может записать данные, когда во многих других PDF-файлах она работает хорошо …
это следующий код, который запускается в цикле для генерации этих изображений …
$imagick->setResolution(200,200);
$imagick->readImage('files/pdffile.pdf[1]');
$imagick->annotateImage($draw_small, 1250, 100, 10, 'Hello header');
$imagick = $imagick->flattenImages();
$file = fopen("/outputfile.jpg", 'w+');
chmod($folder_in_action."/outputfile.jpg", 0755);
fclose($file);
$imagick->writeImage('/outputfile.jpg');
$imagick->clear();
Код работает хорошо и получает точную страницу PDF в виде изображения в папке, но annotateImage не работает с определенными файлами PDF, поэтому вывод не содержит сообщения «Привет заголовок».
Тот же самый код прекрасно работает на большинстве PDF-файлов, где я получаю конкретную PDF-страницу с сообщением «Hello header», написанным сверху как изображение …
Так что не мог угадать, в чем может быть проблема …
PDF-файл, который не позволяет annotateImage писать текст, находится здесь:
http://wikisend.com/download/143652/notworking.pdf
PDF, который работает (обычно большинство файлов PDF работают должным образом …)
Задача ещё не решена.
Других решений пока нет …