mirror of
https://git.code.sf.net/p/seeddms/code
synced 2025-05-13 21:21:27 +00:00
add getAdditionalParams(), getInfo(), width and page can be passed to convert()
This commit is contained in:
parent
43c0f626ea
commit
8d3815d7db
|
@ -34,6 +34,17 @@ class SeedDMS_ConversionServicePdfToImage extends SeedDMS_ConversionServiceBase
|
||||||
$this->timeout = 5;
|
$this->timeout = 5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getInfo() {
|
||||||
|
return "Convert with imagick php functions";
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getAdditionalParams() { /* {{{ */
|
||||||
|
return [
|
||||||
|
['name'=>'width', 'type'=>'number', 'description'=>'Width of converted image'],
|
||||||
|
['name'=>'page', 'type'=>'number', 'description'=>'Page of Pdf document'],
|
||||||
|
];
|
||||||
|
} /* }}} */
|
||||||
|
|
||||||
public function convert($infile, $target = null, $params = array()) {
|
public function convert($infile, $target = null, $params = array()) {
|
||||||
$start = microtime(true);
|
$start = microtime(true);
|
||||||
$imagick = new Imagick();
|
$imagick = new Imagick();
|
||||||
|
@ -41,9 +52,12 @@ class SeedDMS_ConversionServicePdfToImage extends SeedDMS_ConversionServiceBase
|
||||||
* A resolution of 72,72 will create a 596x842 image
|
* A resolution of 72,72 will create a 596x842 image
|
||||||
*/
|
*/
|
||||||
$imagick->setResolution(36,36);
|
$imagick->setResolution(36,36);
|
||||||
if($imagick->readImage($infile.'[0]')) {
|
$page = 0;
|
||||||
|
if(!empty($params['page']) && intval($params['page']) > 0)
|
||||||
|
$page = intval($params['page'])-1;
|
||||||
|
if($imagick->readImage($infile.'['.$page.']')) {
|
||||||
if(!empty($params['width']))
|
if(!empty($params['width']))
|
||||||
$imagick->scaleImage((int) $params['width'], 0);
|
$imagick->scaleImage(min((int) $params['width'], $imagick->getImageWidth()), 0);
|
||||||
$imagick->setImageFormat('png');
|
$imagick->setImageFormat('png');
|
||||||
$end = microtime(true);
|
$end = microtime(true);
|
||||||
if($this->logger) {
|
if($this->logger) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user