广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php excel如何转换成pdf
  • 207
分享到

php excel如何转换成pdf

2023-06-20 16:06:45 207人浏览 独家记忆
摘要

这篇文章主要介绍“PHP excel如何转换成pdf”,在日常操作中,相信很多人在php excel如何转换成pdf问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php excel如何转换成pdf”的疑惑有所

这篇文章主要介绍“PHP excel如何转换成pdf”,在日常操作中,相信很多人在php excel如何转换成pdf问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php excel如何转换成pdf”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

php excel转换成pdf的方法:首先在App下建一个文件夹Libs;然后把类库放进去,并写好命名空间;接着修改composer.JSON;最后在项目根目录下执行composer dump-autoload即可。

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

php excel怎么转换成pdf?

php excel转pdf

接下来说说excel转pdf这个坑,这个是真坑啊,好多说什么用dompdf、mpdf。最后我都把phpexcel换成PhpSpreadsheet这个了,总算是转换成功了,但是问题来了,中文乱码,样式大改变,果断先放弃,看看别的办法,实在不行再回来研究。试试之前看的com加openoffice吧,这个可以实现,最开始觉得麻烦没爱用,先上代码。

<?phpnamespace App\Libs; class Office2pdf{private $osm;public function __construct(){$this->osm = new \COM("com.sun.star.ServiceManager")or die ("Please be sure that OpenOffice.org is installed.n"); }public function MakePropertyValue($name,$value){$oStruct = $this->osm->Bridge_GetStruct("com.sun.star.beans.PropertyValue");$oStruct->Name = $name;$oStruct->Value = $value;return $oStruct;}public function transfORM($input_url, $output_url){$args = array($this->MakePropertyValue("Hidden",true)); $oDesktop = $this->osm->createInstance("com.sun.star.frame.Desktop"); $oWriterDoc = $oDesktop->loadComponentFromURL($input_url,"_blank", 0, $args);$export_args = array($this->MakePropertyValue("FilterName","writer_pdf_Export")); $oWriterDoc->storeToURL($output_url,$export_args);$oWriterDoc->close(true);return $this->getPdfPages($output_url);}public function run($input,$output){$input = "file:///" . str_replace("\\","/",$input);$output = "file:///" . str_replace("\\","/",$output);return $this->transform($input, $output);}public function getPdfPages($path){if(!file_exists($path)) return 0;if(!is_readable($path)) return 0;// 打开文件$fp=@fopen($path,"r");if (!$fp) {return 0;}else {$max=0;while(!feof($fp)) {$line = fgets($fp,255);if (preg_match('/\/Count [0-9]+/', $line, $matches)){preg_match('/[0-9]+/',$matches[0], $matches2);if ($max<$matches2[0]) $max=$matches2[0];}}fclose($fp);// 返回页数return $max;}} }

这个方法是转发的,在这里谢过大神,想必都看到了,有命名空间,那就简单说一下laravel引用自己的类库方法吧,度娘都可以找到,在App下建一个文件夹Libs,然后把类库放进去,写好命名空间,然后在composer.json中……上代码

"autoload": {        "files": [            "app/Libs/Office2pdf.php"        ]    }

然后在项目根目录下执行composer dump-autoload,然后在控制器中引用,new就行了

use app\Libs\Office2pdf;$r = new Office2pdf;  //实例化后就可以用了

逻辑好像出现了一点问题,没有告诉你们安装openoffice,去下载一个安装上,然后需要设置一下,东西都写一起了,有点乱啊,接下来上配置,百度都有教程,我也记录下来吧,方便以后自己用

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

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

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

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

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

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

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

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

接下来配置开启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。

然后用上面的类方法就可以实现excel转pdf了,这里还有一些需要注意的就是打印区域、打印大小、是否打印到一页,这个问题要在excel模板中定义好,转换的时候会读取excel中的源数据,这个问题也难了我好久,好像就没有不难的,如果你们厉害可以研究下有没有接口可以在openoffice中设置,如果有请把链接给我,嘿嘿。

到此,关于“php excel如何转换成pdf”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: php excel如何转换成pdf

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php excel如何转换成pdf
    这篇文章主要介绍“php excel如何转换成pdf”,在日常操作中,相信很多人在php excel如何转换成pdf问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”php excel如何转换成pdf”的疑惑有所...
    99+
    2023-06-20
  • 怎么将Excel转换成PDF
    这篇文章主要介绍怎么将Excel转换成PDF,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、打开在线PDF转换平台——pdf365.cn 二、点击“Excel转PDF”图标,进入Excel文档上传页面,将...
    99+
    2023-06-04
  • php如何将html转换成pdf
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。要将html转成pdf其实有很多种办法,比如我们可以使用html2pdf、mpdf、dompdf和tcpdf等方法。这四种开源库我们都可以使用composer...
    99+
    2021-02-24
    php html pdf
  • C#如何将Excel转换为PDF
    目录总结转换场景将Excel转换为PDF是一个很常用的功能,常见的转换场景有以下三种:转换整个Excel文档到PDF转换Excel文档的某一个工作表到PDF转换Excel文档的某一个...
    99+
    2023-01-28
    C# Excel C# Excel转换为PDF C# PDF
  • 如何轻松完成PDF转Excel
    这篇文章给大家介绍如何轻松完成PDF转Excel,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。PDF和Excel是我们日常学习和办公中经常会用得到的文件格式,有时为了方便查看、传输或编辑,需要进行两个格式之间的相互转化...
    99+
    2023-06-04
  • xlsx如何转换成pdf
    本篇内容介绍了“xlsx如何转换成pdf”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! xlsx转换成p...
    99+
    2023-01-03
    xlsx pdf
  • 如何将HTML转换成PDF
    HTML转换成PDF:工具、用途、优缺点HTML(Hypertext Markup Language)是一种标记语言,用于创建和排版网页等电子文档。而PDF(Portable Document Format)则是由Adobe公司开发的一种电...
    99+
    2023-05-14
  • PDF文件怎么转换EXCEL
    这篇文章主要为大家展示了“PDF文件怎么转换EXCEL”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PDF文件怎么转换EXCEL”这篇文章吧。将PDF文件转换器成EXCEL文件格式。在手机应用市...
    99+
    2023-06-05
  • pdf如何转换成cad图纸
    pdf转换成cad图纸步骤:1、选择合适的转换工具;2、将需要转换的PDF文件准备好;3、打开选择的转换工具,并在界面中找到“打开”或“导入”选项,然后选择要转换的PDF文件;4、在转换工具中,根据需要,调整这些选项以获得最佳的转换结果;5...
    99+
    2023-08-17
  • eml文件如何转换成pdf
    本篇内容主要讲解“eml文件如何转换成pdf”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“eml文件如何转换成pdf”吧! eml文件转换成pdf的方法 1...
    99+
    2023-01-03
    pdf eml文件
  • doc怎么转换成PDF
    这篇文章主要介绍doc怎么转换成PDF,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!doc转换成PDF的方法:首先打开需要转换成pdf格式的word文档;然后点击顶部导航栏中的“文件”选项卡,选中“另存为”;接着点击...
    99+
    2023-06-14
  • Java将Word转换成PDF
    最近项目需要做在线预览文档功能,要求对word文档后台转为pdf,遇到了很多问题,因此记录一下。 网上有很多将Word转换成PDF的方式,这里我试了几种比较简单的方式:POI、aspose、spire...
    99+
    2023-09-29
    java word pdf
  • pdf怎么转换成word
    本篇内容主要讲解“pdf怎么转换成word”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“pdf怎么转换成word”吧!首先下载安装一个wps。安装完成后,打开它,点击左上角“打开”然后找到想要转...
    99+
    2023-07-02
  • Excel如何将xlsx转换成xls
    要将xlsx文件转换为xls文件,可以按照以下步骤操作:1. 打开Excel软件。2. 在Excel软件中,点击“文件”菜单选项。3...
    99+
    2023-10-18
    Excel
  • xlsx如何转换成excel格式
    本篇内容主要讲解“xlsx如何转换成excel格式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“xlsx如何转换成excel格式”吧! xlsx转换成exce...
    99+
    2023-01-03
    xlsx excel
  • dat文件如何转换成excel
    这篇文章主要介绍了dat文件如何转换成excel的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇dat文件如何转换成excel文章都会有所收获,下面我们一起来看看吧。dat文件转换成excel的方法:首先打开ex...
    99+
    2023-07-02
  • windows下caxa软件如何转换成PDF
    这篇“windows下caxa软件如何转换成PDF”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“windows下caxa软件...
    99+
    2023-07-04
  • Go如何将结构体转换成Excel
    今天小编给大家分享一下Go如何将结构体转换成Excel的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。Excel中的一些概念一...
    99+
    2023-07-02
  • python怎么将pdf转换成word
    您可以使用Python中的pytesseract库将PDF文件转换为文本,然后使用Python-docx库将文本转换为Word文档。...
    99+
    2023-09-22
    python
  • 怎么将html转换成excel
    这篇文章将为大家详细讲解有关怎么将html转换成excel,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。html是什么html的全称为超文本标记语言,它是一种标记语言,包含了一系列标签.通过这些标签可以将...
    99+
    2023-06-14
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作