windows平台php_Imagick拓展ImageMagick详细安装步骤

最近的PHP项目中,需要用到PDF转图片的功能,在本地windows开发环境,安装过程遇到好多问题,在此与大家分享。
严格按照以下步骤可以保证一次成功

1 首先建议先安装Imagick拓展

下载php_magick组件。
http://pecl.php.net/package/imagick
注意要选择对应版本—线程安全 和非线程安全版本 php版本64位和32位

具体步骤

1首先要打开phpinfo

windows平台php_Imagick拓展ImageMagick详细安装步骤_第1张图片
image.png

2打开网址
所选的版本红框内信息一定要与第一步的信息相同,否则会失败


windows平台php_Imagick拓展ImageMagick详细安装步骤_第2张图片
image.png

3打开压缩包


windows平台php_Imagick拓展ImageMagick详细安装步骤_第3张图片
image.png

第一步将红框内的文件(php_imagick.dll) 放入php的ext文件夹下
例如:E:\phpStudy\PHPTutorial\php\php-7.1.13-nts\ext
第二步将除红框文件外的其他文件全部移动到php的文件夹下

例如:E:\phpStudy\PHPTutorial\php\php-7.1.13-nts\

4修改php.ini


windows平台php_Imagick拓展ImageMagick详细安装步骤_第4张图片
image.png

5重启本地环境
打开phpinfo,看到imagick说明拓展安装成功


windows平台php_Imagick拓展ImageMagick详细安装步骤_第5张图片
D778C53E-636F-4b6c-8FDF-FBA7542AA26A.png

2 安装ImageMagick拓展

ImageMagick安装前注意:前面安装好imagick以后可以看到如下信息

windows平台php_Imagick拓展ImageMagick详细安装步骤_第6张图片
D778C53E-636F-4b6c-8FDF-FBA7542AA26A.png

红框内信息 就是支持的ImageMagick的版本,安装其他版本同样会导致失败
1下载ImageMagick
http://ftp.icm.edu.pl/packages/ImageMagick/binaries/
找到并下载
image.png

2安装ImageMagick
安装好以后
首先将安装路径添加到path环境变量
例如:C:\Program Files (x86)\ImageMagick-6.9.3-Q16
然后以防万一将安装目录下的.dll文件全部复制到php目录下
例如:E:\phpStudy\PHPTutorial\php\php-7.1.13-nts
默认全部替换即可(只要拓展和ImageMagick版本对应替换不会出问题)
windows平台php_Imagick拓展ImageMagick详细安装步骤_第7张图片
image.png

3查看phpinfo
以防万一 重启电脑 再启动本地环境打开phpinfo
windows平台php_Imagick拓展ImageMagick详细安装步骤_第8张图片
image.png

看到上面的信息说明ImageMagick安装成功

3 安装ghostscript

1此时还不能使用PDF转图片功能
还需要安装ghostscript


image.png

安装成功以后,以防万一再次重启电脑,启动本地环境
2测试代码


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 $k => $v) {
        $v->setImageFormat('png');
        $fileName = $path . md5($k . time()) . '.png';
        if ($v->writeImage($fileName) == true) {
            $return[] = $fileName;
        }
    }
    return $return;
}


pdf如果比较大注意php脚本设置执行时间
可以看到转换成功

你可能感兴趣的:(windows平台php_Imagick拓展ImageMagick详细安装步骤)