返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php怎么将work转为pdf
  • 227
分享到

php怎么将work转为pdf

phpworkpdf 2017-06-01 23:06:09 227人浏览 无得
摘要

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑一、配置php扩展如果是 PHP5.4 以前的版本,需要在 php.ini 里把 com.allow_dcom = true 打开(即去掉前面的分号)。如果是 PHP5

教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

一、配置php扩展

如果是 PHP5.4 以前的版本,需要在 php.ini 里把 com.allow_dcom = true 打开(即去掉前面的分号)。

如果是 PHP5.4 之后的版本,则要在 php.ini 里增加一行扩展 extension = php_com_dotnet.dll

重启 Apache 或 IIS 服务器,打印 phpinfo() 信息,检查 com_dotnet 扩展是开启。

↑ 检查 php 的 ext 目录中 是否存在 com_dotnet.dll 文件,如果没有请自行下载对应版本的 dll

二、配置office支持

OpenOffice 是一套开源跨平台的办公软件,由许多自由软件人士共同来维持,让大家能在 Microsoft Office 之外,还能有免费的 Office 可以使用。

OpenOffice 与微软的办公软件套件兼容,能将 doc、xls、ppt 等文件转换为 pdf 格式,其功能绝对不比 Microsoft Office 差。

OpenOffice 官网:Http://www.openoffice.org/

OpenOffice 下载:http://www.openoffice.org/download/index.html

OpenOffice 需要 java 支持,请确认安装了 JDK,并配置了 JRE 环境变量。

1. 配置组件服务

OpenOffice 安装完成之后,按 win+R 快捷键进入运行菜单,输入 Dcomcnfg 打开组件服务。

[组件服务] >> [计算机] >> [我的电脑] >> [DCOM配置] >> [OpenOffice Service Manager]

右键打开属性面板,选择安全选项卡,分别在 启动和激活权限访问权限 上勾选自定义,添加 Everyone 的权限。

↑ 启动和激活权限 和 访问权限 都使用自定义配置

↑ 添加 Everyone 用户组,记得确认前先检查名称

↑ 两个自定义配置相同,允许 Everyone 拥有所有权限

再选择标识选项卡,勾选 交互式用户,保存设置后退出。

2. 后台运行软件

安装完 OpenOffice 后,需要启动一次确认软件可以正常运行,然后再打开命令行运行以下命令:

切换到安装目录: cd C:\Program Files\OpenOffice 4\program

后台运行该软件: soffice -headless-accept="Socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

PS:该命令只需要执行一次,就可以使软件一直在后台运行,即使重启服务器也不受影响。

三、实现文件转换

PDF 转换工具(支持 doc, docx, xls, xlsx, ppt, pptx 等格式)

class PDFConverter
{    private $com;    
    public function __construct()
    {        try {            $this->com = new COM('com.sun.star.ServiceManager');
        } catch (Exception $e) {            die('Please be sure that OpenOffice.org is installed.');
        }
    }    
    public function execute($source, $export)
    {        $source = 'file:///' . str_replace('\\', '/', $source);        $export = 'file:///' . str_replace('\\', '/', $export);        $this->convertProcess($source, $export);
    }    
    public function getPages($pdf_path)
    {        if (!file_exists($pdf_path)) return 0;        if (!is_readable($pdf_path)) return 0;        if ($fp = fopen($pdf_path, 'r')) {            $page = 0;            while (!feof($fp)) {                $line = fgets($fp, 255);                if (preg_match('/\/Count [0-9]+/', $line, $matches)) {                    preg_match('/[0-9]+/', $matches[0], $matches2);                    $page = ($page < $matches2[0]) ? $matches2[0] : $page;
                }
            }            fclose($fp);            return $page;
        }        return 0;
    }    private function setProperty($name, $value)
    {        $struct = $this->com->Bridge_GetStruct('com.sun.star.beans.PropertyValue');        $struct->Name = $name;        $struct->Value = $value;        return $struct;
    }    private function convertProcess($source, $export)
    {        $desktop_args = array($this->setProperty('Hidden', true));        $desktop = $this->com->createInstance('com.sun.star.frame.Desktop');        $export_args = array($this->setProperty('FilterName', 'writer_pdf_Export'));        $program = $desktop->loadComponentFromURL($source, '_blank', 0, $desktop_args);        $program->storeToURL($export, $export_args);        $program->close(true);
    }
}

使用 PDFConverter(必须传入绝对路径)

$arr = array('doc', 'docx', 'xls', 'xlsx', 'ppt', 'pptx');

$converter = new PDFConverter();

foreach ($arr as $ext) {
    $source = __DIR__ . '/office/test.' . $ext;
    $export = __DIR__ . '/pdf/test.' . $ext . '.pdf';
    $converter->execute($source, $export);
    echo '<p>' . $ext . ' Done</p>';
}

--结束END--

本文标题: php怎么将work转为pdf

本文链接: https://lsjlt.com/news/241.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • php怎么将work转为pdf
    本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑一、配置PHP扩展如果是 PHP5.4 以前的版本,需要在 php.ini 里把 com.allow_dcom = true 打开(即去掉前面的分号)。如果是 PHP5...
    99+
    2017-06-01
    php work pdf
  • 怎么将pdf转换为html
    本篇文章给大家分享的是有关怎么将pdf转换为html,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。先打开pdf格式转换工具,选择转换格式“文件转html“;然后添加要转换的pd...
    99+
    2023-06-15
  • Java怎么将PDF转为Word
    这篇文章主要介绍“Java怎么将PDF转为Word”,在日常操作中,相信很多人在Java怎么将PDF转为Word问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java怎么将PDF转为Word”的疑惑有所帮助!...
    99+
    2023-06-02
  • php怎么将Excel文件转为PDF格式
    随着互联网的飞速发展,越来越多的企业和个人开始使用网络来处理和存储各种数据。在这个背景下,各种数据格式的转换变得越来越重要,其中将Excel文件转换为PDF格式的需求也日益增加。作为一种流行的编程语言,PHP不仅可以处理网页开发和服务器端编...
    99+
    2023-05-14
  • 怎么在将html转换为pdf
    怎么在将html转换为pdf?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。html有什么特点1、简易性:超级文本标记语言版本升级采用超集方式,从而更加灵活方便,...
    99+
    2023-06-14
  • Java中怎么将html转为pdf
    近年来,随着数字化进程的不断推进,电子化文件的需求也越来越高。在实际工作中,我们常常需要将 HTML 文件转换为 PDF 文件,在此过程中需要使用到 Java 编程技术。本文将从以下三个方面介绍 HTML 转 PDF 的 Java 实现方法...
    99+
    2023-05-14
  • Java 将PDF转为Word
    众所周知,PDF文档除了具有较强稳定性和兼容性外, 还具有较强的安全性,在工作中可以有效避免别人无意中对文档内容进行修改。但与此同时,也妨碍了对文档的正常修改。这时我们可以将PDF转为Word文档进行修改或再编辑。使用软件将 PDF 文档转...
    99+
    2023-09-05
    pdf 格式转换 word java
  • java将excel转为pdf
    在Java中,可以使用Apache POI库处理Excel文件,以及使用iText库将Excel文件转换为PDF格式。 Apache POI是一个Java库,它允许Java开发人员处理Microsoft Office格式的文件,包...
    99+
    2023-09-07
    java excel pdf
  • C#怎么实现将PDF转为Excel
    这篇文章主要介绍了C#怎么实现将PDF转为Excel的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇C#怎么实现将PDF转为Excel文章都会有所收获,下面我们一起来看看吧。通常,PDF格式的文档能支持的编辑功能...
    99+
    2023-06-29
  • Java怎么将Excel转为PDF格式
    本篇内容主要讲解“Java怎么将Excel转为PDF格式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java怎么将Excel转为PDF格式”吧!本文将介绍在程序中如何将Excel工作簿转为PD...
    99+
    2023-06-02
  • C# 中怎么将PDF转换为PDFA
    本篇文章给大家分享的是有关C# 中怎么将PDF转换为PDFA,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。使用类库:Spire.PDF for .NET pack获取及引用:方...
    99+
    2023-06-03
  • Java实现将PDF转为PDF/A
    目录Jar包导入将PDF转为PDF/A通过将PDF格式转换为PDF/A格式,可保护文档布局、格式、字体、大小等不受更改,从而实现文档安全保护的目的,同时又能保证文档可读、可访问。本篇...
    99+
    2024-04-02
  • Python中怎么将Office文件转为PDF
    这篇文章将为大家详细讲解有关Python中怎么将Office文件转为PDF,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。安装 win32com在实战之前,需要安装 Python 的 win3...
    99+
    2023-06-16
  • C#怎么将PDF转为其他格式
    本篇内容介绍了“C#怎么将PDF转为其他格式”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!必要步骤:步骤一:dll文件获取及导入。方法1.通...
    99+
    2023-06-03
  • Java如何实现将PDF转为PDF/A
    小编给大家分享一下Java如何实现将PDF转为PDF/A,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Jar包导入本次程序中导入的是Spire.Pdf.jar。可...
    99+
    2023-06-26
  • C#实现将PDF转为线性化PDF
    目录程序环境方法步骤步骤1. 安装PDF插件。步骤2. 编辑如下代码实现转换。线性化PDF文件是PDF文件的一种特殊格式,可以通过Internet更快地进行查看。线性化的PDF,在页...
    99+
    2024-04-02
  • 怎么用python包pdfkit将HTML转换为PDF
    本篇内容介绍了“怎么用python包pdfkit将HTML转换为PDF”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!python包-pdfk...
    99+
    2023-06-30
  • 怎么将PDF转换为HTML?方法浅析
    随着数字化时代的来临,越来越多的资料被电子化,其中 PDF 文档是最常见的一种。虽然 PDF 文档在跨平台性、排版规范性上都有很大的优势,然而在网页显示和搜索活动中都会遇到很大的困难。因此,将 PDF 文档转化为 HTML 格式成了一项必要...
    99+
    2023-05-14
  • html怎么转为pdf
    随着互联网时代的到来,人们已经开始习惯使用网络进行信息传输和数据交换。在网络文档的阅读和传输中,HTML(Hypertext Markup Language)已经成为一种常用的标记语言。但有时候我们需要将HTML文档转换为PDF(Porta...
    99+
    2023-05-14
  • php怎么将word文档转成PDF文件
    在如今数字化的时代,文档转换成PDF(Portable Document Format)是十分常见的需求,因为PDF是一种跨平台、适用于多种设备和操作系统的文件格式,具有良好的兼容性和可靠的可读性。而php作为一种强大的服务器端编程语言,可...
    99+
    2023-05-14
    php
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作