Текстовое псевдонимы PHP Imagick PDF

У меня возникли проблемы с конвертированием PDF-файлов в JPEG с помощью Imagick в PHP. После многих исследований, я могу конвертировать CMYK pdf в RGB jpg без странного преобразования цвета … но теперь, мой последний вопрос: текст полностью сглажен! Текст из исходного PDF-файла не является векторизованным.

Пример :
Псевдонимый текст с преобразованием в pdf

  • Внесите текущий объект ($ this) в класс потомков
  • Почему этот прозрачный PNG вызывает границы при объединении с использованием GD?
  • Вот код:

    $imagick = new Imagick(); $imagick->setResolution(150,150); $imagick->readImage('file.pdf'); //CMYK PROFILE $icc = file_get_contents('USWebCoatedSWOP.icc'); $imagick->profileImage('icc', $icc); $imagick->setImageColorspace(imagick::COLORSPACE_CMYK); //RGB PROFILE $icc = file_get_contents('sRGB_IEC61966-2-1_no_black_scaling.icc'); $imagick->profileImage('icc', $icc); $imagick->setImageColorspace(imagick::COLORSPACE_RGB); $imagick->setImageFormat( "jpg" ); $imagick->setImageCompression(imagick::COMPRESSION_JPEG); $imagick->setImageCompressionQuality(90); header( "Content-Type: image/jpeg" ); echo $imagick; 

  • Codeigniter - динамическое получение относительного / абсолютного пути вне папки приложения
  • Несколько соединений с базой данных в структурах Doctrine2 и Zend
  • Левое присоединение к условию И другой синтаксис условий в Доктрине
  • PHP - много переменных или один массив?
  • Переопределение функции PHP?
  • Как заменить несколько значений в php
  • 2 Solutions collect form web for “Текстовое псевдонимы PHP Imagick PDF”

    Image Magick использует Ghostscript для фактического рендеринга PDF-файлов, и я думаю, что вы используете версию Ghostscript, в которой есть ошибка , которая заставляет текст не сглаживаться правильно.

    Я протестировал код, который вы предоставили, а также с прямым вызовом Ghostscript с помощью команды.

     gs -q -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=1 -sDEVICE=pngalpha -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -r150 -sOutputFile=foo-%d.png flyer.pdf 

    По умолчанию в моей папке Centos использовалась Ghostscript версии 8.70, которая показывает проблему, которую вы видите, и при вызове из Imagick и из команды gs выше. Загрузка версии 9.14 отсюда делает текст сглаженным правильно при использовании командной строки и, вероятно, будет вызван через Imagick.

    Скорее всего, это не проблема с сглаживанием.

    Увеличьте разрешение до 400 и посмотрите, что произойдет.

     $imagick->setResolution(400,400); 
    PHP is the Best Programming Language in the world.