最近有个功能需求是: 识别pdf文件转化为html页面形式
解决方式:
摘录示例如下
// Include Composer autoloader if not already done.
include 'vendor/autoload.php';
// Parse pdf file and build necessary objects.
$parser = new \Smalot\PdfParser\Parser();
$pdf = $parser->parseFile('document.pdf');
$text = $pdf->getText();
echo $text;
常规的pdf可以进行识别,但是对于里面含有数据表格,就无法识别出里面的表格的样式。推荐程度一般。
方法2:Linux命令,pdf2htmlEX
1, 安装pdf2htmlEX,过程如下:
sudo yum install -y cmake gcc gnu-getopt libpng-devel fontforge-devel cairo-devel poppler-devel libspiro-devel freetype-devel poppler-data libjpeg-turbo-devel git make gcc-c++ pango-devel
sudo yum install -y libjpeg-turbo.x86_64 libjpeg-turbo-devel libjpeg-turbo-devel.x86_64 libtiff.x86_64 libtiff-devel openjpeg-devel.x86_64 openjpeg giflibgiflib-devel libxml2.x86_64 libxml2-devel libspiro.x86_64 libspiro-devel libuninameslist-devel.x86_64 libtool-ltdl-devel
2,在github上 下载软件
https://github.com/coolwanglu/pdf2htmlEX
https://github.com/coolwanglu/fontforge/tree/pdf2htmlEX
3,解压缩文件
cd 到压缩文件目录下
tar zxvf pdf2htmlEX-0.14.6.tar.gz
cd pdf2htmlEX-0.14.6
4,编辑环境变量文件
1.将如下两条加入到/etc/profile文件底部
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
2.使其生效
source /etc/profile
5,在fontforge目录下面执行
命令: sh autogen.sh
命令: sh configure
命令: make
命令: make install
6,在pdf2htmlEX目录下面执行,出现文件夹权限问题,可以chmod 777 文件夹
cmake . && make && sudo make install
7,安装完成,使用 pdf2htmlEX document.pdf 即可生成对应的html文件
比较推荐,就是需要进行环境的安装,稍有麻烦,但是pdf中的表格和图片都能进行转化
方法3 Linux 命令pdftohtml
安装方式,CentOS为例:sudo yum install poppler-utils.x86_64
安装完成,使用命令 pdftohtml -c -s document.pdf 即可
详细命令如下
[root@localhost ~]# pdftohtml --help
pdftohtml version 0.26.5
Usage: pdftohtml [options] <PDF-file> [<html-file> <xml-file>]
-f <int> : first page to convert
-l <int> : last page to convert
-q : don't print any messages or errors
-h : print usage information
-? : print usage information
-help : print usage information
--help : print usage information
-p : exchange .pdf links by .html
-c : generate complex document
-s : generate single document that includes all pages
-i : ignore images
-noframes : generate no frames
-stdout : use standard output
-zoom <fp> : zoom the pdf document (default 1.5)
-xml : output for XML post-processing
-hidden : output hidden text
-nomerge : do not merge paragraphs
-enc <string> : output text encoding name
-fmt <string> : image file format for Splash output (png or jpg)
-v : print copyright and version info
-opw <string> : owner password (for encrypted files)
-upw <string> : user password (for encrypted files)
-nodrm : override document DRM settings
-wbt <fp> : word break threshold (default 10 percent)
-fontfullname : outputs font full name
最近有个功能需求是:识别pdf文件转化为html页面形式解决方式:方法1:开始是寻找的PHP插件pdfparser,详见github链接:https://github.com/smalot/pdfparser,官网示例文档:https://www.pdfparser.org/documentation摘录示例如下<?php // Include Composer autoloader if not already done.include 'vendor/autoload...
如何将PDF文件转成html文件
昨天领导给我两个PDF文件,叫我将这PDF文件转成html,找了半天的资料都没有找到好的方法能够快速转成html,只能通过自己的技巧了
将pdf文件的所有内容复制粘贴到这里https://panjiachen.github.io/vue-element-admin/#/example/create进行类似word那样编辑文本样式。
编辑好的文本直接点击以下按钮,出现一个弹窗,将源代码复制下来,回到桌面新建一个html文件,粘贴保存运行就可以了
运行的结果
企业 Web 项目开发中经常会有生产 PDF 格式文档的需求,例如 PDF 账单下载,月末生成各种统计报表等等。我们要帮助企业实现自动化,也就是说无需人工干预,程序能够按需从 DB 中拿数据自主生成。
项目使用 PHP 开发,于是调研了一下 PHP 的 PDF 类库,有 dompdf,TCPDF 之流,总的来说,各个项目主页上自夸的成分居多,基本思想都是类似的,即先用 HTML 写一个模板,
我研究的是Aspose.PDF,感觉效果挺好的,具体使用官网上介绍的都有,但是都比较简单,主要是起示例作用。
结合自己实际工作,我对相关方法进行了整理,自己写了个工具类,当然,在使用这个工具类之前,要先引用aspose.pdf.dll。
官方的dll文件只能处理前4页内容,而且还带版权信息,我用的是破解版的,没有限制,但是个别文件处理效果不如官方正式的。破解版在csdn上有下载,需要的可以自己...
PDF文件和PHP界面是两种不同的东西,不能直接将PDF文件转换为PHP界面。然而,您可以使用PHP编写代码来在Web界面中嵌入PDF文件,从而在PHP界面中显示PDF文件。以下是一些步骤:
1. 在Web服务器上上传您的PDF文件。可以将PDF文件放在Web服务器的任何地方,例如服务器文件系统上的某个目录中,或者在数据库中存储PDF文件的二进制数据。
2. 在您的PHP代码中,使用相应的PHP库来处理PDF文件。例如,可以使用fpdf库(http://www.fpdf.org/)创建新的PDF文件,或使用TCPDF库(https://tcpdf.org/)在PHP界面中显示现有的PDF文件。
3. 在PHP界面中嵌入PDF文件。您可以使用HTML <iframe>元素将PDF文件嵌入到PHP页面中,例如:
<iframe src="your_pdf_file.pdf" width="100%" height="800px"></iframe>
4. 根据您的需求调整PDF文件的外观。可以使用CSS样式表调整<iframe>元素的外观,例如设置边框、背景颜色等等。
请注意,PDF文件的大小和内容可能会影响PDF文件在PHP界面中的加载速度和性能。此外,您需要确保Web服务器有足够的权限来读取和显示PDF文件。