После поиска в Google и SO я нашел этот небольшой кусочек кода для создания эскизов документов PDF с помощью ImageMagick.
Проблема для меня заключается в том, чтобы внедрить его в мою тему WordPress.Я думаю, что я застрял на пути к кешу, который нужен сценарию для временных файлов.
Я использую его, как описано в статье:
<img src="http://localhost/multi/wp-content/themes/WPalchemy-theme/thumbPdf.php?pdf=http://localhost/multi/wp-content/uploads/2012/03/sample.pdf&size=200 />
, что должно быть правильно (возможно ... но я предполагаю, что я правильно использовать полныйURL к реальному файлу), потому что, когда я нажимаю на этот URL, я попадаю на страницу, которая читает следующую ошибку:
Unable to read the file: tmp/http://localhost/multi/wp-content/uploads/2012/03/sample.pdf.png
Теперь tmp определен в thumbPdf.phpсценарий, но я не совсем понимаю, какое это должно быть значение.Это URL или путь?Как Timthumb.php, я могу сделать его относительно сценария thumbPdf.php?(Я попытался ./cache, который является настройкой в timthumb -и был уверен, что в моем корне темы была папка / cache, но безрезультатно).Кроме того, к вашему сведению я помещаю папку / tmp в свой корень и все еще получаю ту же ошибку.
Так как мне настроить tmp , чтобы эта работа работала?
http://stormwarestudios.com/articles/leverage-php-imagemagick-create-pdf-thumbnails/
function thumbPdf($pdf, $width)
{
try
{
$tmp = 'tmp';
$format = "png";
$source = $pdf.'[0]';
$dest = "$tmp/$pdf.$format";
if (!file_exists($dest))
{
$exec = "convert -scale $width $source $dest";
exec($exec);
}
$im = new Imagick($dest);
header("Content-Type:".$im->getFormat());
echo $im;
}
catch(Exception $e)
{
echo $e->getMessage();
}
}
$file = $_GET['pdf'];
$size = $_GET['size'];
if ($file && $size)
{
thumbPdf($file, $size);
}
Я видел этот ответ: Как мне преобразовать документ PDF в изображение для предварительного просмотра в PHP? и собираюсь попробовать его в следующем