Преобразование PDF в JPEG и JPEG в миниатюру

Я написал код для преобразования pdf в jpeg и он работает нормально, но какую опцию я должен передать, чтобы создать миниатюру в exec (); (для ширины и высоты). здесь я получаю. я пытался
Опция -dDEVICEWIDTHPOINTS = 100 -dDEVICEHEIGHTPOINTS = 200, но кажется, что аргументы неверны.

ниже мой код:

 //include 'thumbcreator.php';
ini_set('display_errors', 1);
$pdf='example.pdf';
$quality=90;
$res='300x300';
$exportName="pdf_export_" . time();
$exportPath=realpath(dirname(__FILE__))."/$exportName/fullres/%03d.jpg";
$exportPaththumb=realpath(dirname(__FILE__))."/$exportName/fullresthumb/%03d.jpg";

mkdir(realpath(dirname(__FILE__))."/$exportName");
mkdir(realpath(dirname(__FILE__))."/$exportName/fullres");
mkdir(realpath(dirname(__FILE__))."/$exportName/fullresthumb");
set_time_limit(900);
exec("'gs' '-dNOPAUSE' '-sDEVICE=jpeg' '-dUseCIEColor' '-dTextAlphaBits=4' '-dGraphicsAlphaBits=4' '-o$exportPath' '-r$res' '-dJPEGQ=$quality' '$pdf'",$output);
exec("'gs' '-dNOPAUSE' '-sDEVICE=jpeg' '-dUseCIEColor' '-dTextAlphaBits=4' '-dGraphicsAlphaBits=4','-dDEVICEWIDTHPOINTS=100 -dDEVICEHEIGHTPOINTS=200' '-o$exportPaththumb' '-r$res' '-dJPEGQ=$quality' '$pdf'",$output);

for($i=0;$i<count($output);$i++){
echo($output[$i] .'<br/>');
}

Любая помощь будет оценена. Заранее спасибо :).

0

Решение

Как вы думаете, почему DEVICEWIDTHPOINTS и DEVICEHEIGHTPOINTS являются недопустимыми аргументами?

Вы не установили -dFIXEDMEDIA, поэтому начальные значения могут быть переопределены медиа-запросами от ввода. Вы, вероятно, также захотите установить -dPDFFitPage, чтобы масштабировать ввод PDF, чтобы он соответствовал заявленному размеру носителя, если вы этого не сделаете, то вы просто получите нижний левый угол отрисовки ввода.

Не устанавливайте -r при использовании этого параметра, необходимо пересчитать разрешение, чтобы масштабировать ввод в запрошенный носитель фиксированного размера. (Обратите внимание, что вы запросили носитель в пунктах, 1/72 дюйма)

Пожалуйста, не используйте -dUSECIEColor, это ужасный взлом из мира PostScript. Если вы точно не знаете, что делаете, это приведет к ухудшению управления цветом.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]