doc ppt转pdf在linux还是没有完美解决,不管是openoffice,还是libreoffice。
打开doc,ppt文档可能会出现布局错乱的情况。libreoffice还不是很完美,建议装稳定最新版,4.3.3
装了一下wps for linux,打开doc,ppt根win下面一样,但是wps并没有提供命令或者转换接口。
所以想完美解决doc,ppt转pdf还是要在windows下面做。
一,安装libreoffice,imagemagick
# yum install ImageMagick libreoffice
libreoffice可以实现doc,ppt转pdf
imagemagick可以实现pdf转图片
二,libreoffice添加字体
libreoffice自带的字体很少,如果libreoffice找到字体,就会默认使用宋体,五号字
# mount /dev/sda1 /mnt/win7/ # cp -r /mnt/win7/Windows/Fonts/ /home/tank/.config/libreoffice/4/user/fonts
重新打开doc,ppt文档,你会发现字体多出来很多。
三,doc,ppt转pdf
1,直接利用libreoffice
$ export DISPLAY=:0.0 && libreoffice --headless --invisible --convert-to pdf 123.ppt convert /home/tank/download/myppt/123.ppt -> /home/tank/download/myppt/123.pdf using impress_pdf_Export Overwriting: /home/tank/download/myppt/123.pdf
2,pdf转图片
$ convert -verbose -density 150 -trim 123.pdf -quality 70 -sharpen 0x1.0 123.jpg "gs" -q -dQUIET -dPARANOIDSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=0 "-sDEVICE=pnmraw" -dTextAlphaBits=4 -dGraphicsAlphaBits=4 "-r150x150" "-sOutputFile=/tmp/magick-XXSi41Xk" "-f/tmp/magick-XXkgR3hF" "-f/tmp/magick-XXQJ4sEZ" /tmp/magick-XXSi41Xk[0] PNM 1240x1754 1240x1754+0+0 8-bit DirectClass 18.67mb /tmp/magick-XXSi41Xk[1] PNM 1240x1754 1240x1754+0+0 8-bit DirectClass 18.67mb /tmp/magick-XXSi41Xk[2] PNM 1240x1754 1240x1754+0+0 8-bit DirectClass 18.67mb 123.pdf[0] PDF 1240x1754 1240x1754+0+0 16-bit DirectClass 18.67mb 123.pdf[0] PDF 1240x1754 1240x1754+0+0 16-bit DirectClass 18.67mb 123.pdf[0] PDF 1240x1754 1240x1754+0+0 16-bit DirectClass 18.67mb 123.pdf=>123-0.jpg[0] PDF 1240x1754=>546x1417 1240x1754+199+168 16-bit DirectClass 140kb 123.pdf=>123-1.jpg[1] PDF 1240x1754=>623x1417 1240x1754+199+168 16-bit DirectClass 108kb 123.pdf=>123-2.jpg[2] PDF 1240x1754=>653x703 1240x1754+199+168 16-bit DirectClass 68kb
3,利用unoconv,实现doc,ppt转pdf
# yum install http://pkgs.repoforge.org/unoconv/unoconv-0.5-1.el6.rf.noarch.rpm # unoconv -f pdf 123.ppt //将123.ppt转成pdf
转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/linux/1669.html
为什么不用Windows 转换?
你可以用python 脚本在win下面转换,放到共享nfs上,linux 上可以随心所欲了。。。
不想用win系统。
我按你的教程试了一上,在doc转pdf时,也没有报错,但转换出来的pdf打不开,不知道为什么,说文件已损坏
# export DISPLAY=:0.0 && libreoffice --headless --invisible --convert-to pdf 1.docx
/usr/lib64/libreoffice/program/soffice.bin X11 error: Can't open display:
Set DISPLAY environment variable, use -display option
or check permissions of your X-Server
(See "man X" resp. "man xhost" for details)
# export DISPLAY=:0.0 && libreoffice --headless --invisible --convert-to pdf 1.docx
/usr/lib64/libreoffice/program/soffice.bin X11 error: Can't open display:
Set DISPLAY environment variable, use -display option
or check permissions of your X-Server
(See "man X" resp. "man xhost" for details)
报错。