本篇文章主要介绍如何利用PHP将word文档转html和pdf,感兴趣的朋友参考下,希望对大家有所帮助。本篇文章主要介绍如何利用PHP将word文档转html和pdf,感兴趣的朋友参考下,希望对大家有所帮助。 一 : 使用phpword生成word文档,具体步骤如下: 通过composer安装PHPword,composer require phpoffice\phpword;使用方法: //设置默认样式$phpWord-setDefaultFontName
一 : 使用phpword生成word文档,具体步骤如下:
通过composer安装PHPword,composer require phpoffice\phpword;使用方法:
//设置默认样式
$phpWord->setDefaultFontName('仿宋');//字体
$phpWord->setDefaultFontSize(16);//字号
//添加页面
$section = $phpWord->createSection();
//添加目录
$styleTOC = ['tabLeader' => \PhpOffice\PhpWord\Style\TOC::TABLEADER_DOT];
$styleFont = ['spaceAfter' => 60, 'name' => 'Tahoma', 'size' => 12];
$section->addTOC($styleFont, $styleTOC);
//默认样式
$section->addText('Hello PHP!');
$section->addTextBreak();//换行符
//指定的样式
$section->addText(
'Hello world!',
[
'name' => '宋体',
'size' => 16,
'bold' => true,
]
);
$section->addTextBreak(5);//多个换行符
//自定义样式
$myStyle = 'myStyle';
$phpWord->addFontStyle(
$myStyle,
[
'name' => 'Verdana',
'size' => 12,
'color' => '1BFF32',
'bold' => true,
'spaceAfter' => 20,
]
);
$section->addText('Hello laravel!', $myStyle);
$section->addText('Hello Vue.js!', $myStyle);
$section->addPageBreak();//分页符
//添加文本资源
$textrun = $section->createTextRun();
$textrun->addText('加粗', ['bold' => true]);
$section->addTextBreak();//换行符
$textrun->addText('倾斜', ['italic' => true]);
$section->addTextBreak();//换行符
$textrun->addText('字体颜色', ['color' => 'AACC00']);
//列表
$listStyle = ['listType' => \PhpOffice\PhpWord\Style\ListItem::TYPE_NUMBER];
$section->addListItem('List Item I', 0, null, 'listType');
$section->addListItem('List Item I.a', 1, null, 'listType');
$section->addListItem('List Item I.b', 1, null, 'listType');
$section->addListItem('List Item I.c', 2, null, 'listType');
$section->addListItem('List Item II', 0, null, 'listType');
$section->addListItem('List Item II.a', 1, null, 'listType');
$section->addListItem('List Item II.b', 1, null, 'listType');
//超链接
$linkStyle = ['color' => '0000FF', 'underline' => \PhpOffice\PhpWord\Style\Font::UNDERLINE_SINGLE];
$phpWord->addLinkStyle('myLinkStyle', $linkStyle);
$section->addLink('http://www.baidu.com', '百度一下', 'myLinkStyle');
$section->addLink('http://www.baidu.com', null, 'myLinkStyle');
//添加图片
$imageStyle = ['width' => 480, 'height' => 640, 'align' => 'center'];
$section->addImage('./img/t1.jpg', $imageStyle);
$section->addImage('./img/t2.jpg',$imageStyle);
//添加标题
$phpWord->addTitleStyle(1, ['bold' => true, 'color' => '1BFF32', 'size' => 38, 'name' => 'Verdana']);
$section->addTitle('标题1', 1);
$section->addTitle('标题2', 1);
$section->addTitle('标题3', 1);
//添加表格
$styleTable = [
'borderColor' => '006699',
'borderSize' => 6,
'cellMargin' => 50,
];
$styleFirstRow = ['bgColor' => '66BBFF'];//第一行样式
$phpWord->addTableStyle('myTable', $styleTable, $styleFirstRow);
$table = $section->addTable('myTable');
$table->addRow(400);//行高400
$table->addCell(2000)->addText('学号');
$table->addCell(2000)->addText('姓名');
$table->addCell(2000)->addText('专业');
$table->addRow(400);//行高400
$table->addCell(2000)->addText('2015123');
$table->addCell(2000)->addText('小明');
$table->addCell(2000)->addText('计算机科学与技术');
$table->addRow(400);//行高400
$table->addCell(2000)->addText('2016789');
$table->addCell(2000)->addText('小傻');
$table->addCell(2000)->addText('教育学技术');
//页眉与页脚
$header = $section->createHeader();
$footer = $section->createFooter();
$header->addPreserveText('页眉');
$footer->addPreserveText('页脚 - 页数 {PAGE} - {NUMPAGES}.');
//生成的文档为Word2007$writer = \PhpOffice\PhpWord\IOFactory::createWriter($phpWord, 'Word2007');
$writer->save('./word/hello.docx');
二:使用tcpdf生成pdf使用composer安装:composer require tecnickcom/tcpdf,使用方法:
$pdf = new \TCPDF();$pdf->writeHTML('<p>内容</p>');
//输出PDF$pdf->Output('tt .pdf', 'I');
//I输出、D下载
沃梦达教程
本文标题为:如何利用PHP将word文档转html和pdf
猜你喜欢
- 用nohup命令实现PHP的多进程 2023-09-02
- windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境) 2023-09-02
- PHP简单实现二维数组的矩阵转置操作示例 2022-10-02
- PHP仿tp实现mvc框架基本设计思路与实现方法分析 2022-10-18
- Laravel balde模板文件中判断数据为空方法 2023-08-30
- php微信公众号开发之秒杀 2022-11-23
- laravel实现按月或天或小时统计mysql数据的方法 2023-02-22
- laravel通用化的CURD的实现 2023-03-17
- PHP中PDO事务处理操作示例 2022-10-15
- PHP实现微信支付(jsapi支付)流程步骤详解 2022-10-09