linux下用php将doc、ppt转图片

解决方案分红两步:php

  (1)调用unoconv命令将 doc、ppt 转 pdfshell

  (2)使用 imagemagick将 pdf 转图片windows

步骤dom

1.安装unoconv测试

sudo apt-get install unoconv

安装是否成功字体

unoconv --version

2.安装imagemagickspa

sudo apt-get install imagemagick

是否安装成功code

convert -version

3.测试xml

  (1)将odt文件转成pdf文件blog

unoconv -f pdf test.docx

  (2)将pdf转成图片(jpg)

convert XXX.pdf %d.jpg

    %d是按页进行转换

4.php调用shell命令进行转换

<?php exec("unoconv -f pdf test.docx"); exec("convert test.pdf %d.jpg");

 补充

1.若是出现错误:

  convert: not authorized `test.pdf' @ error/constitute.c/ReadImage/412.
  convert: no images defined `%d.jpg' @ error/convert.c/ConvertImageCommand/3210.

  解决方案:

  修改配置文件/etc/ImageMagick-6/policy.xml

  将

<policy domain="coder" rights="none" pattern="PDF" />

  改成

<policy domain="coder" rights="read|write" pattern="PDF" />

  添加

<policy domain="coder" rights="read|write" pattern="LABEL" />

2.若是转成的图片模糊

  转换是增长参数

convert -density 300 -quality 100 test.pdf  %d.jpg

  -density XXX

  图像每英寸面积内的像素点数,数值越高图片质量越高

  -quality 100

  转换jpg时的压缩率,100表示不压缩

php代码改成

<?php exec("unoconv -f pdf test.docx"); exec("convert -density 300 -quality 100 test.pdf %d.jpg");

 3.乱码问题

  若是转换的文件出现乱码

  在/usr/share/fonts/下新建文件夹 win 并设置权限,将 windows 下的 window-fonts 下字体所有拷贝到其中

相关文章
相关标签/搜索