PHP, 将 PDF/Word/PPT 文档转换成图片生成长图

文章目录

    • 先将 office 文档转成 PDF
    • 将 PDF 转成图片 (代码)
    • 注意事项

先将 office 文档转成 PDF

  1. 通过 Java 调用 openoffice
    • openoffice 安装与报错解决
    • 实际使用时, 在 windows 上没大问题, 在 centos(Linux) 时脚本执行异常地慢
  2. 在 Linux 上改用 libreoffice, 使用 PHP 的 exec 调用命令行运行

将 PDF 转成图片 (代码)

由于 PDF 多页的情况下会生成多图, 下面代码还会将生成的多张图片合成长图

function main() {
   
  // 如果将代码放在 web 服务中则可能需要用到以下两行
  // 可在 php.ini 修改具体的值
  ini_set('max_execution_time', '0'); // 不限制处理时间
  ini_set('memory_limit', '-1'); // 取消内存大小限制

  $imgs = pdf2jpg('./new.pdf', '.');

  $all_size = pic_max_size($imgs); // 返回底图的宽和高

  $base_pic = create_base_pic($all_size[0], $all_size[1], '.'); // 生成底图

  $bigimage = create_bigimage($imgs, $base_pic, '.'); // 拼接成长图

  // 清理转化过程的中间文件
  foreach ($imgs as $val) {
   
    unlink($val);
  }
  unlink($base_pic);
}

// $imgs array 小图数组, $target string 长图底图
function

你可能感兴趣的:(PHP,PHP,PDF,office,合并,图片)