需求:通过PHP把PDF生成PNG图片,一般用在在线阅读浏览用的。
wget ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/ImageMagick.tar.gz2 解压
# tar -xzvf ImageMagick.tar.gz3 编译安装
# cd ImageMagick-6.7.1-6
# ./configure -prefix=/usr/local/imagemagick -enable-lzw -with-modules && make && make install4.查看一下
# /usr/local/imagemagick/bin/convert -version5.测试一下
# pwd
/root/test/ImageMagick-6.7.1-6
# cd images/
# /usr/local/imagemagick/bin/convert -sample 25%x25% wizard.jpg test.jpg6.开始装imagick的PHP扩展(注意:安装imagick扩展时需要PHP >= 5.1.3,ImageMagick >= 6.2.4)
# wget http://pecl.php.net/get/imagick-3.1.0RC1.tgzhttp://code.google.com/p/lnamp-web-server/downloads/detail?name=imagick-3.1.0b1.tgz&can=2&q=label%3Aimagick
8.解压
# tar -zxvf imagick-3.1.0RC1.tgz
apt-get install php5-dev9.phpize
# cd imagick-3.1.0RC1
# phpize10.配置编译
# ./configure
# make&&make install注意:编译成功后会在php 扩展目录生成imagick.so,然后再php.ini里面 加上“extension="/usr/lib/php5/20090626+lfs/imagick.so"”
11.重启apache
/etc/init.d/apache2 restart
12.也可以使用PECL方式安装
1) sudo apt-get install libmagick-dev
2) sudo apt-get install php-pear php5-dev
3) sudo pecl install imagick
PHP代码调用:
function pdf2png($PDF,$Path){
if(!extension_loaded('imagick')){
return false;
}
if(!file_exists($PDF)){
return false;
}
$IM = new imagick();
$IM->setResolution(120,120);
$IM->setCompressionQuality(100);
$IM->readImage($PDF);
foreach ($IM as $Key => $Var){
$Var->setImageFormat('png');
$Filename = $Path.'/'.md5($Key.time()).'.png';
if($Var->writeImage($Filename) == true){
$Return[] = $Filename;
}
}
return $Return;
} |