精选30+云产品,助力企业轻松上云!>>>
因为博客文章排版的问题,以及自己一直都是先用word文档编写做笔记,然后复制粘贴到自己的博客网站,但是总发现样式排版出现了偏差,为了方便阅读,我希望将word文档能够直接在web上显示,但是尝试了很多次,读取word文档受环境影响,所以另取途径,将word文档生成pdf显示在web上,下面我们来实操一下。
代码分享:
extension=php_com_dotnet.dll com.allow_dcom=true
<?php header('Content-type:text/html;charset=utf-8'); //穿件指向COM组件的索引 $word = new COM("word.application") or die("Unable to instantiate Word"); //显示目前Word版本号 echo "Loaded Word, version {$word->Version}n"; //设置可见性 $word->Visible=0; //打开一个文档 $word->Documents->open(dirname(__FILE__)."1.docx"); //读取文档内容 $test = $word->ActiveDocument->contant->Text; //输出文档内容 echo "<hr/>"; echo $test; //关闭word的连接 $word->Quit(); //清空对象 $word=null;
暂时实现不了,待以后补充
期望能够实现像道客巴巴那样的预览效果
先编写通过PHP打开pdf文档,代码如下:
<?phpif (!function_exists('read_pdf')) {function read_pdf($file){if (strtolower(substr(strrchr($file, '.'), 1)) != 'pdf') {echo '文件格式不对.';return;}if (!file_exists($file)) {echo '文件不存在';return;}header('Content-type: application/pdf');header('filename=' . $file);readfile($file);} } read_pdf('php.pdf');
但这样显示的是浏览器全屏预览,所以为了更好地用户体验,在前端采用 pdfobject在线显示文档组件来显示文档
官网:/
github下载:/
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"><title>在线浏览PDF</title> </head> <body> <script type="text/javascript" src="PDFObject/pdfobject.min.js"></script> <script>// 我的pdf文件放在项目的pdf文件夹下,名字叫做bed("php.pdf"); </script> </body> </html>
<!DOCTYPE html> <html> <head><meta charset="UTF-8"><title>设定浏览PDF窗口样式</title><!--在此引入bootstrap只为初始化样式div样式--><link rel="stylesheet" href=".3.7/css/bootstrap.min.css"/><style>html, body {height: 100%;overflow: hidden;background-color: cornflowerblue;}/* 设置放置PDF的div的样式 */#example1 {width: 80%;height: 80%;}/* PDF容器样式 */.pdfobject-container {height: 800px;}/* PDF样式 */.pdfobject {border: 1px solid #666;}</style> </head> <body> <div id="example1"></div> </body> </html> <script type="text/javascript" src="PDFObject/pdfobject.min.js"></script> <script>// 我的pdf文件放在项目的pdf文件夹下,名字叫做php.pdf//其中,{page: "1"}表示从第几页开始展示bed("php.pdf", "#example1", {page: "1"}); </script>
总的来说,上述实操实现了我想要的预览效果,我会在下次博客版本升级中运用到这项技术,而对于word来说,因为需要配置本地环境(主要原因是word不开源)才能使得php创建COM对象成功,以及可能会出现的乱码问题(老司机说的),所以,目前暂时还未能完美实现,建议在web上采用pdf预览。
本文发布于:2024-02-03 06:52:56,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170691437649362.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |