wordppt转pdf
注意:支持windows;linux目前我无法解决
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.php代码:
ppt转pdf代码
public function ppt_to_pdf() { $srcfilename = \’E:/aa.ppt\’; $destfilename = \’E:/aa.pdf\’; try { if(!file_exists($srcfilename)){ return; } $ppt = new \COM(“powerpoint.application”) or die(“Unable to instantiate Powerpoint”); $presentation = $ppt->Presentations->Open($srcfilename, false, false, false); $presentation->SaveAs($destfilename,32,1); $presentation->Close(); $ppt->Quit(); } catch (\Exception $e) { if (method_exists($ppt, “Quit”)){ $ppt->Quit(); } return; } }
excel转ppt
public function excel_to_pdf() {
$srcfilename = \’E:/aa.xls\’;
$destfilename = \’E:/aa.pdf\’;
try { if(!file_exists($srcfilename))
{
return;
}
$excel = new \COM(“excel.application”) or die(“Unable to instantiate excel”);
$workbook = $excel->Workbooks->Open($srcfilename, null, false, null, “1”, “1”, true);
$workbook->ExportAsFixedFormat(0, $destfilename);
$workbook->Close();
$excel->Quit();
} catch (\Exception $e)
{ echo (“src:$srcfilename catch exception:” . $e->__toString());
if (method_exists($excel, “Quit”)){
$excel->Quit();
}
return;
}
}
word转pdf(其实文本格式的文件都可以用这个,比如:txt)
public function doc_to_pdf()
{
$srcfilename = \’E:/aa.doc\’;
$destfilename = \’E:/aa.pdf\’;
try { if(!file_exists($srcfilename))
{
return;
}
$word = new \COM(“word.application”) or die(“Can\’t start Word!”);
$word->Visible=0;
$word->Documents->Open($srcfilename, false, false, false, “1”, “1”, true);
$word->ActiveDocument->final = false;
$word->ActiveDocument->Saved = true;
$word->ActiveDocument->ExportAsFixedFormat( $destfilename, 17, // wdExportFormatPDF false, // open file after export 0, // wdExportOptimizeForPrint 3, // wdExportFromTo 1, // begin page 5000, // end page 7, // wdExportDocumentWithMarkup true, // IncludeDocProps true, // KeepIRM 1 // WdExportCreateBookmarks );
$word->ActiveDocument->Close();
$word->Quit();
} catch (\Exception $e) {
if (method_exists($word, “Quit”)){
$word->Quit();
} return;
}
}