Php pdf转多图

这篇博客介绍了如何在宝塔环境中安装 Imagick 扩展以及 Ghostscript,用于实现PDF文件转换为PNG图片的功能。通过下载、编译和安装Ghostscript,然后检查Imagick扩展是否加载,最后展示了一个PHP函数,该函数接受PDF路径、输出路径和页面参数,将PDF转换为PNG图片数组。
摘要由CSDN通过智能技术生成

安装imagick  宝塔安装扩展

安装 Ghostscript  

wget https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs925/ghostscript-9.25.tar.gz
tar zxvf ghostscript-9.25.tar.gz
cd ghostscript-9.25
./configure --prefix=/usr
make all
make install

/**
     * pdf转图片
     * @param type $pdf
     * @param type $path
     * @param type $page
     * @return boolean|string
     */
    public function pdf2png($pdf,$path,$page=-1) {
//        $pathimg = 'files/pdf_order/images/';
//        $data = $this->pdf2png( "/www/wwwroot/crm-kjt/public/" . $path, $pathimg );
        if(!extension_loaded('imagick'))
        {
            return false;
        }
        if(!file_exists($pdf))
        {
            return false;
        }
        if(!is_readable($pdf))
        {
            return false;
        }
        $im = new \Imagick();
        $im->setResolution(150,150);
        $im->setCompressionQuality(100);
        if($page==-1)
            $im->readImage($pdf);
        else
            $im->readImage($pdf."[".$page."]");
        foreach ($im as $Key => $Var)
        {
            $Var->setImageFormat('png');
            $filename = $path. md5($Key.time()).'.png';
            if($Var->writeImage($filename) == true)
            {
                $Return[] = $filename;
            }
        }
        //返回转化图片数组,由于pdf可能多页,此处返回二维数组。
        return $Return;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值