我希望能够通过PHP将PDF文件转换为HTML文件,但我遇到了一些麻烦。在PDF中将PDF转换为HTML?
我发现了一个基本的方法来使用Saaspose,它可以将PDF转换为HTML文件。然而,这存在一些问题,例如使用SVG,图像,定位,字体等。
我只需要从PHP文件和任何与其关联的图像中获取文本的能力,然后以线性格式显示它,而不是用绝对定位进行格式化。
我的意思是,如果PDF是这样的:
我想把它转换成单柱设计的HTML文件。如果有图像,我想让它们返回。
这是可能的PHP?我知道我可以简单地从PDF文件中抓取文本,但抓取图像又如何呢?
另一个问题是我希望一切都是内联的,因为它在单个文件中被提供给客户端。目前,我可以通过一些代码,使我的设置做到这一点:
for ($i = 0; $i < $object_number; $i++) {
$object = $html->find("object")->find("embed")->eq($i);
$embed = file_get_contents("Output/OutputHtml/" . $object->attr("src"));
array_push($converted_obj, $embed);
array_push($original_obj, $object);
}
for ($i = 0; $i < $object_number; $i++){
pq($original_obj[$i])->replaceWith($converted_obj[$i]);
}
这抓住所有SVG
文件和内嵌显示它们。图像会更容易,因为我可以使用base64
。
这对我很有帮助,并且非常感谢。但如何给这里的页面范围转换?我尝试添加** passthru(“pdftohtml $ source_pdf 3-5 $ output_folder/new_file_name”,$ b)**,但它不起作用。你能告诉吗? – Hydrogirl 2014-02-18 21:47:19
也许它转换完整的PDF,你必须添加一个delte php命令(在脚本执行后),删除所有不需要的页面...不知怎的,像这样的概念: '$ unwanted_pages = array(5,6,7,8 ); foreach($ unwanted_pages as $ eachPageIndex){unlink('filename'。$ eachPageIndex);}' – 2014-03-07 09:58:32
有指定页面的pdf脚本的参数:http://linux.die.net/man/1/pdftohtml $ a = passthru(“pdftohtml -f $ firstpage -l $ lastpage $ source_pdf $ output_folder/new_file_name”,$ b); 也检查编码选项 – mameluc 2015-06-10 07:53:58