通过phpoffice将word与excel文件转成PDF文件

2024-03-10 11:52
文章标签 excel pdf 转成 word phpoffice

本文主要是介绍通过phpoffice将word与excel文件转成PDF文件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.首先需要对应的库

composer require phpoffice/phpword
composer require phpoffice/phpspreadsheet
composer require mpdf/mpdf

2.相关代码如下

<?phpnamespace common;use PhpOffice\PhpWord\PhpWord;
use PhpOffice\PhpWord\IOFactory;
use PhpOffice\PhpWord\Settings;
use PhpOffice\PhpSpreadsheet\IOFactory as SpreadIoFactory;
use PhpOffice\PhpPresentation\IOFactory as PowerpointIoFactory;
use common\PDF;/*** 提供Office管理服务* @name Office.php* @package jypp* @category model* @link http://www.chanekeji.com* @author mengchen* @version 1.0* @copyright CHANGE INC* @since 2023-02-15*/
class Office
{   /*** word转pdf* @param string $wordPath * @param string $fileName*/public function wordToPdf($wordPath = '',$fileName = 'output'){   // 设置具体存放路径$basePath = sprintf('%spublic/upload/pdf/%s',ROOT_PATH,date('Ymd'));$path = sprintf('%s/%s.pdf',$basePath,$fileName);if (!file_exists($basePath)) {mkdir($basePath, 0755, true); //创建目录}// 创建一个新的 PHPWord 实例$phpWord = new PhpWord();Settings::setPdfRendererPath(sprintf('%svendor/mpdf/mpdf',ROOT_PATH));//设置转换pdf的类库名(DomPDF、MPDF、TCPDF)需要下载对应的类库Settings::setPdfRendererName('MPDF');// 从 Word 文档中加载内容$wordReader = IOFactory::createReader('Word2007');$phpWord = $wordReader->load($wordPath);// 用 PHPWord 创建 PDF 文件$xmlWriter = IOFactory::createWriter($phpWord, 'PDF');$xmlWriter->save($path);if(file_exists($path)){$pdf = new PDF();$pngs = $pdf->pdfToPng($path);if(count($pngs) > 0){unlink($path);return $pngs;}return [];}else{return [];}}/*** excel转pdf* @param string $wordPath * @param string $fileName*/public function excelToPdf($excelPath = '',$fileName = 'output'){   // 设置具体存放路径$basePath = sprintf('%spublic/upload/pdf/%s',ROOT_PATH,date('Ymd'));$path = sprintf('%s/%s.pdf',$basePath,$fileName);if (!file_exists($basePath)) {mkdir($basePath, 0755, true); //创建目录}/*第一步:打开excel文件*/$Excelreader = SpreadIoFactory::createReaderForFile($excelPath);$ExcelObj= $Excelreader ->load($excelPath);//打开后的excel对象/*第二步:另存为pdf文件*/$PDFWriter = SpreadIoFactory::createWriter($ExcelObj,'Mpdf');$PDFWriter ->save($path);if(file_exists($path)){$pdf = new PDF();$pngs = $pdf->pdfToPng($path);if(count($pngs) > 0){unlink($path);return $pngs;}return [];}else{return [];}}
}

这篇关于通过phpoffice将word与excel文件转成PDF文件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/794162

相关文章

Java easyExcel实现导入多sheet的Excel

《JavaeasyExcel实现导入多sheet的Excel》这篇文章主要为大家详细介绍了如何使用JavaeasyExcel实现导入多sheet的Excel,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录1.官网2.Excel样式3.代码1.官网easyExcel官网2.Excel样式3.代码

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

Python中图片与PDF识别文本(OCR)的全面指南

《Python中图片与PDF识别文本(OCR)的全面指南》在数据爆炸时代,80%的企业数据以非结构化形式存在,其中PDF和图像是最主要的载体,本文将深入探索Python中OCR技术如何将这些数字纸张转... 目录一、OCR技术核心原理二、python图像识别四大工具库1. Pytesseract - 经典O

Python实现精准提取 PDF中的文本,表格与图片

《Python实现精准提取PDF中的文本,表格与图片》在实际的系统开发中,处理PDF文件不仅限于读取整页文本,还有提取文档中的表格数据,图片或特定区域的内容,下面我们来看看如何使用Python实... 目录安装 python 库提取 PDF 文本内容:获取整页文本与指定区域内容获取页面上的所有文本内容获取

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

使用C#删除Excel表格中的重复行数据的代码详解

《使用C#删除Excel表格中的重复行数据的代码详解》重复行是指在Excel表格中完全相同的多行数据,删除这些重复行至关重要,因为它们不仅会干扰数据分析,还可能导致错误的决策和结论,所以本文给大家介绍... 目录简介使用工具C# 删除Excel工作表中的重复行语法工作原理实现代码C# 删除指定Excel单元

Python实现一键PDF转Word(附完整代码及详细步骤)

《Python实现一键PDF转Word(附完整代码及详细步骤)》pdf2docx是一个基于Python的第三方库,专门用于将PDF文件转换为可编辑的Word文档,下面我们就来看看如何通过pdf2doc... 目录引言:为什么需要PDF转Word一、pdf2docx介绍1. pdf2docx 是什么2. by

Python实现pdf电子发票信息提取到excel表格

《Python实现pdf电子发票信息提取到excel表格》这篇文章主要为大家详细介绍了如何使用Python实现pdf电子发票信息提取并保存到excel表格,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录应用场景详细代码步骤总结优化应用场景电子发票信息提取系统主要应用于以下场景:企业财务部门:需

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、