51 lines
1.3 KiB
PHP
51 lines
1.3 KiB
PHP
|
<?php
|
||
|
/* This file is meant to run from the CLI/Shell
|
||
|
* it extracts the first page of a pdf file and saves to
|
||
|
* jpg with same name + _thumb pic being 240pix wide
|
||
|
* Author Carsten Jensen aka Tomse @ http://awesome.commodore.me
|
||
|
* Copyright (C) 2012 Carsten Jensen
|
||
|
* This is distributed under GNU GPLv2
|
||
|
*/
|
||
|
|
||
|
/* Requirements:
|
||
|
* php (cli/shell version) / or as apache site
|
||
|
* imagemagick module
|
||
|
*/
|
||
|
|
||
|
/* Usage:
|
||
|
* Run the file from the browser (apache setup)
|
||
|
* or from cli : php -f extract
|
||
|
* thumb files will be saved in same dir as pdf files
|
||
|
*/
|
||
|
|
||
|
// Edit the path here where your PDF files are stored.
|
||
|
$dir = "./pages/";
|
||
|
// Edit width in pixels to change sizes
|
||
|
$size = 240;
|
||
|
|
||
|
// Replace false with true to make the script work
|
||
|
$work = false;
|
||
|
|
||
|
|
||
|
// code is here.. nothing more to modify
|
||
|
// -------------------------------------
|
||
|
if ($work == true)
|
||
|
{
|
||
|
$files = glob($dir . "*.[pP][dD][fF]");
|
||
|
foreach($files as $v)
|
||
|
{
|
||
|
$filename = substr($v, 0, strlen($v) - 4);
|
||
|
$thumb = new Imagick();
|
||
|
$thumb->setResolution(300, 300);
|
||
|
$thumb->readImage($v ."[0]");
|
||
|
$thumb->setImageFormat('jpeg');
|
||
|
$thumb->setImagecompression(imagick::COMPRESSION_JPEG);
|
||
|
$thumb->setImageCompressionQuality(75);
|
||
|
$thumb->resizeImage($size, 1024, imagick::FILTER_LANCZOS, 1, true);
|
||
|
$thumb->writeImage($filename . "_thumb.jpg");
|
||
|
$thumb->clear();
|
||
|
$thumb->destroy();
|
||
|
}
|
||
|
}
|
||
|
?>
|