OpenOffice.org 是一套跨平台的办公室软件套件,能在Windows、Linux、MacOS X (X11)和 Solaris 等操作系统上执行。它与各个主要的办公室软件套件兼容。OpenOffice.org 是免费软件,任何人都可以免费下载、使用及推广它。
一、Openoffice下载
目前最新版本为:4.1.14
下载链接:https://www.openoffice.org/download/index.html
![](https://btc354.com/wp-content/uploads/2023/08/image-23-1024x307.png)
二、windows下启动OpenOffice
■设置权限
1.cmd 运行Dcomcnfg.exe->组件服务->计算机->我的电脑->DCOM配置->OpenOffice Service Manager
2.鼠标右击->属性,选择安全 ,和标识这2个配置。标识配置=>交互式用户,安全=>自定义,全部添加Everyone权限。
点击编辑->添加Everyone权限就行了
3.启动OpenOffice服务命令:
cd C:\Program Files (x86)\OpenOffice 4\program
soffice -headless -accept=”socket,host=127.0.0.1,port=8100;urp;” -nofirststartwizard
■配置php.ini
php.ini 开启 com.allow_dcom = true
php.ini 添加 extension=php_com_dotnet.dll
三、php实现excel转pdf
public function printPdf($input_url1,$output_url1,$output_url2 = null){
if(strtoupper(substr(PHP_OS,0,3))==='WIN'){
//windows
require_once './application/controllers/pdf.php';
$pdf = new office2pdf();
$pdf->run($input_url1,$output_url1);
}else{
//linux
if(!empty($output_url2)){
$command = '/usr/java/jdk1.8.0_271/bin/java -jar /usr/local/src/openoffice/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar ' . $input_url1 . ' ' . $output_url1 . ' ;mv ' . $output_url1 . ' "' . $output_url2 . '" > /dev/null 2>&1';
// $return_var返回值0或1,如果返回0则执行成功,返回1则执行失败
exec($command, $output, $return_var);
if ($return_var != 0) {
throw new \Exception("PDFファイルを作成しない");
}
}else{
$command = "/usr/java/jdk1.8.0_271/bin/java -jar /usr/local/src/openoffice/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar $input_url1 $output_url1";
// $return_var返回值0或1,如果返回0则执行成功,返回1则执行失败
try{
exec($command, $output, $return_var);
if ($return_var != 0) {
throw new \Exception("生成PDF失败");
}
}catch(Exception $e){
}
}
}
}