pdf到php中的html转换

时间:2009-09-05 12:22:35

标签: php pdf

在我的php脚本中我想将pdf文件转换为html格式,而这样做时生成的html文件内容不应该被打扰....

我找到了http://sourceforge.net/projects/pdftohtml/,但它是命令行工具,需要shell访问权限。第二件事是生成的html文件内容受到干扰..

1 个答案:

答案 0 :(得分:1)

可以从php执行shell命令吗?

$rtn = exec ('CLI Command to execute', $emptyVartoCaptureOutput);

该命令在shell中执行,在运行php脚本的用户的上下文中运行(_WWW或类似的脚本从apache webserver运行)。当您提供第二个可选参数时,该命令的所有输出都将被捕获到数组中。

似乎这样可以解决您的问题。

回应你的评论:

您在原始帖子中引用的工具是您将要执行的命令行工具 - 您需要确定要执行的确切命令,包括该命令的任何和所有参数。

我不熟悉您引用的工具,但我怀疑它有多种选择。要查看的几个重要选项是生成的html所在的位置。我猜它可以去一个文件(这需要_WWW对一个巨大的安全风险的目录有写权限)或std out。当您使用php中的exec命令时,发送到std out的任何输出都会保存为数组,当您向exec函数传递可选的第二个参数时,每个新行都会有一个新元素。因此,您应该能够从脚本中动态捕获和操作和/或显示输出的html。

对于仅显示pdf中的html的简单html页面,您可能会执行以下操作:

<std header stuff omitted for brevity>
<?php
$rtn = exec('CLI Command to Execute -a option1 -b option2', $ouputted_html);
foreach ($ouputted_html as $val){
    echo $val . "\n";
}
?>
</body>
</html>

你可以使用echo implode(“\ n”,$ outputs_html);代替foreach循环来完成同样的操作,但是如果你选择利用它,foreach循环允许你控制每一行。

请注意,生成的html可能包含也可能不包含标题信息,您必须进行实验并查看。显然,您可以添加标准html页面需要的内容,或者如果已经提供则减去。

所以你现在有了将pdf文件显示为html的基础,如果你需要有关该工具复杂性的特定帮助,我建议你找一个专门用于该工具的论坛或listserv,或者请求开发人员的帮助( s)阅读文档和常见问题解答后。