zoukankan      html  css  js  c++  java
  • word2pdf

    在网上现在能查到的,并且能通过php调用相关接口,将word转换成pdf文件的有openoffice,访问网址为http://www.openoffice.org/download/index.html

    它提供了各种平台的转换软件。

    自己下载后,安装使用。

    在windows环境下:

    我们下载安装后,首先要启动openoffice 对应的wordpdf的服务
    比如我安装的路径是:C:Program FilesOpenOffice 4program 我们在cmd命令下进入该路径,运行下面命令 启动wordpdf对应接口。
    C:Program FilesOpenOffice 4program>soffice -headless -accept='socket,host=127.0.0.1,port=8100;urp;' -nofirststartwizard
    然后我们再配置php的调用openoffice word生成pdf的配置, 打开php.ini 然后配置下面的内容
    extension=php_com_dotnet.dll
    你看看你那里有没有上面的配置,如果没有则加上对应的配置,然后查看一下php扩展文件夹里面有没有php_com_dotnet.dll
    一般都在ext文件夹下,如果文件夹下没有则要更换php或者下载对应版本的php_com_dotnet.dll,这个是php用来调用openoffice的扩展文件。
     
    再次,我们就要用php代码来实现wordpdf了,看下面的代码,来自网上,部分修改。
    <?php
    set_time_limit(0);  //设置过期时间
    $home = str_replace("\","/",getcwd());
    function MakePropertyValue($name,$value,$osm){  
    $oStruct = $osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");  
    $oStruct->Name = $name;  
    $oStruct->Value = $value;  
    return $oStruct;  
    }  
    function word2pdf($doc_url, $output_url){  
    $osm = new COM("com.sun.star.ServiceManager")or die ("Please be sure that OpenOffice.org is installed.n");  
    $args = array(MakePropertyValue("Hidden",true,$osm));  
    $oDesktop = $osm->createInstance("com.sun.star.frame.Desktop");  
    $oWriterDoc = $oDesktop->loadComponentFromURL($doc_url,"_blank", 0, $args);  
    $export_args = array(MakePropertyValue("FilterName","writer_pdf_Export",$osm));  
    $oWriterDoc->storeToURL($output_url,$export_args);  
    $oWriterDoc->close(true);  
    }  
    $doc_file = $home."/word.docx";//输入的 word文件地址,
    $output_file = $home. '/pdf.pdf';  //输出的pdf 文件地址,
    $doc_file = "file:///" . $doc_file;  
    $output_file = "file:///" . $output_file;  
    word2pdf($doc_file,$output_file);  
    ?>
    然后运行php文件,上面的word文件就会自动转为pdf文件输出 测试一下吧。
  • 相关阅读:
    4.qml-ECMAScript(Array对象、Math对象)
    3.qml-ECMAScript_03(Object基类对象、String对象)
    2.qml-ECMAScript_02(原始值类型、通用转换方法)
    ORA-00001: 违反唯一约束条件(SOLEX.SYS_C0012537) --解决方法
    macOS 系统打开和退出文件夹(cd命令)
    macOS 系统下node安装和环境配置(通过node官网)
    macOS 系统报错:zsh:command not found :npm
    macOS 系统更新node老是不成功
    macOS 系统上升级 Python
    maxOS 系统更新node版本
  • 原文地址:https://www.cnblogs.com/xiashuo-he/p/4203521.html
Copyright © 2011-2022 走看看