您好,登錄后才能下訂單哦!
如何將php中office文件轉pdf文件?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
php office轉pdf的方法:首先打開“php.ini”文件;然后開啟dcom擴展;接著配置office組件服務;最后運行將office文件轉化為pdf的代碼文件即可。
將office文件轉化為pdf的方法有
1.利用openoffice提供的服務 (比較簡單,但是轉化的效果不太好)
2.使用office提供的服務 (注:這在windows服務器上,并且服務器上面安裝了版本比較高的office)
下面重點介紹利用office服務將office文件轉化為pdf
1.php開啟dcom擴展
打開php.ini,搜索php_com_dotnet和php_com_dotnet:
extension=php_com_dotnet.dll //把前面的分號去掉 com.allow_dcom = true //改為true
重啟apache
2.配置office組件服務
.
像這樣的操作還有兩個!!
3.下面就該介紹將office文件轉化為pdf的代碼了
(1)ppt轉pdf代碼
1 public function ppt_to_pdf() { 2 $srcfilename = 'E:/aa.ppt'; 3 $destfilename = 'E:/aa.pdf'; 4 try { 5 if(!file_exists($srcfilename)){ 6 return; 7 } 8 $ppt = new \COM("powerpoint.application") or die("Unable to instantiate Powerpoint"); 9 $presentation = $ppt->Presentations->Open($srcfilename, false, false, false); 10 $presentation->SaveAs($destfilename,32,1); 11 $presentation->Close(); 12 $ppt->Quit(); 13 } catch (\Exception $e) { 14 if (method_exists($ppt, "Quit")){ 15 $ppt->Quit(); 16 } 17 return; 18 } 19 }
(2)excel轉pdf代碼
1 public function excel_to_pdf() { 2 $srcfilename = 'E:/aa.xls'; 3 $destfilename = 'E:/aa.pdf'; 4 try { 5 if(!file_exists($srcfilename)){ 6 return; 7 } 8 $excel = new \COM("excel.application") or die("Unable to instantiate excel"); 9 $workbook = $excel->Workbooks->Open($srcfilename, null, false, null, "1", "1", true); 10 $workbook->ExportAsFixedFormat(0, $destfilename); 11 $workbook->Close(); 12 $excel->Quit(); 13 } catch (\Exception $e) { 14 echo ("src:$srcfilename catch exception:" . $e->__toString()); 15 if (method_exists($excel, "Quit")){ 16 $excel->Quit(); 17 } 18 return; 19 } 20 }
(3)word轉pdf代碼(其他的文本格式的文件也可以使用這個,例:txt文件)
1 public function doc_to_pdf() { 2 $srcfilename = 'E:/aa.doc'; 3 $destfilename = 'E:/aa.pdf'; 4 try { 5 if(!file_exists($srcfilename)){ 6 return; 7 } 8 9 $word = new \COM("word.application") or die("Can't start Word!"); 10 $word->Visible=0; 11 $word->Documents->Open($srcfilename, false, false, false, "1", "1", true); 12 13 $word->ActiveDocument->final = false; 14 $word->ActiveDocument->Saved = true; 15 $word->ActiveDocument->ExportAsFixedFormat( 16 $destfilename, 17 17, // wdExportFormatPDF 18 false, // open file after export 19 0, // wdExportOptimizeForPrint 20 3, // wdExportFromTo 21 1, // begin page 22 5000, // end page 23 7, // wdExportDocumentWithMarkup 24 true, // IncludeDocProps 25 true, // KeepIRM 26 1 // WdExportCreateBookmarks 27 ); 28 $word->ActiveDocument->Close(); 29 $word->Quit(); 30 } catch (\Exception $e) { 31 if (method_exists($word, "Quit")){ 32 $word->Quit(); 33 } 34 return; 35 } 36 }
關于如何將php中office文件轉pdf文件問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。