您好,登錄后才能下訂單哦!
這篇文章主要介紹了php把word轉圖片的方法,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
php把word轉圖片的方法:首先給服務器安裝libreoffice;然后使用exec函數來調用命令行操作;最后通過“xec("soffice --headless --invisible..."”方法把word轉圖片即可。
linux,centos,php,word轉圖片方法(無格式錯亂,亂碼等問題)
剛開始的時候是客戶的活兒,真的是沒有想到,被這樣一個方法給卡住了,真是醉了,經過漫長的一周,終于搞定了這個問題,以下就來給大家介紹以下這個方法把。能方便大家。
【注】本方法也可以將 ppt 轉為圖片(execl 沒試過,有時間你們可以試一下)
(直接轉換沒辦法,所以找了個折中的辦法,先轉成pdf文件,然后再將pdf轉圖片)
先說一下環境的安裝(我也是經歷了好幾次失敗才總結出環境的安裝的,*表示必須的操作,如果是大神,那么請繞道)
服務器環境:centos7
*集成環境:寶塔
安裝完寶塔后,選擇安裝LNMP的集成環境(php的版本最好安裝5.6及以上)
這里需要注意的就是必須使用 nginx 的環境(別用apache,坑太多),還有就是使用寶塔的集成環境,別問我為什么,因為坑太多,只要時間充足,工作不限時長,你也可以自己嘗試的安裝各種環境試試(為了快速,就按照我的環境安裝步驟走)
等待。。。
環境安裝完成之后,我們進入寶塔的軟件商店,點擊php后面的設置,然后給php安裝imagemagick擴展
等待這個php擴展的安裝完成
安裝完成之后,我們開始給服務器安裝libreoffice
直接執行下面的代碼就可以(第一個安裝好就ok了,后面兩個安裝的時候可能會報錯,但是只要第一個安裝好了,其實沒什么大的影響)
1 yum install libreoffice 2 yum install libreoffice-headless 3 yum -y install libreoffice-langpack-zh-Han*
安裝完成libreoffice后,我們使用下面的代碼來測試一下是否安裝成功:
soffice --headless --invisible --convert-to pdf 1.docx
(如果是 ppt 轉圖片的話只要把后面的 docx 文件 換成 pptx 文件即可)
如果在執行命令的目錄下,生成了一個與word同名的pdf文件,即說明libreioffice安裝成功了
對于libreoffice的linux使用可以自行百度
在php中,我們可以使用 exec() 函數來調用命令行操作,還有 shell_exec() 等函數(函數用法自行百度)
如果在php方法中不能執行 exec() 方法,說明php將這些方法禁用了,這個時候我們可以修改 php.ini 文件中的配置
在php.ini 文件中找到 disable_functions = 開頭的一行,然后在后面把自己要使用的函數刪掉,然后重新啟動一下php,然后我們寫的php就可以調用 exec() 等函數了
至此,我們就把word轉圖片的所要用到的所有環境都安裝成功了
php中word轉pdf的方法:
$result = exec("soffice --headless --invisible --convert-to pdf 1.docx"); echo json_encode($result);
可以在同目錄生成word同名pdf文件
php中pdf轉圖片的方法:
$result = pdf2png("/www/wwwroot/wwj.wangwenjie.club/1.pdf","/www/wwwroot/wwj.wangwenjie.club/"); 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; }
可以在同目錄下生成png圖片(pdf幾頁就有幾張圖片生成)
感謝你能夠認真閱讀完這篇文章,希望小編分享php把word轉圖片的方法內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。