gpt4 book ai didi

php - 使用 PHP exec() 和 Python PDF 订书机工具将 PDF 拆分为单页

转载 作者:太空宇宙 更新时间:2023-11-03 18:58:23 26 4
gpt4 key购买 nike

我正在开发的一个基于 PHP 的网站需要将 PDF 文档拆分为单个页面。经过广泛搜索后,我最终决定使用 Stapler ( https://github.com/hellerbarde/stapler ),它是 PDFtk 的 Python 替代品。

注意:在我的例子中,PDF 文件与 public_html 一起放置在公共(public)访问之上的目录中。我还在这里放了订书机。

<小时/>

当我通过控制台运行该工具时,它运行得非常好。使用 -v verbose 选项会产生以下输出:

[root@server directory]# python2 stapler -v burst filename.pdf
Mode: burst
filename_1.pdf
filename_2.pdf

2 page(s) in 1 file(s) processed.

已解决:通过使用 -d 选项,我能够指定输出目录。无需对运行 apache 的用户进行任何更改,我就可以从 PHP 执行订书机。

exec("python2 ../directory/stapler -vd ../directory burst ../directory/filename.pdf 2>&1", $output, $return_var);

转储$output:

Dump => array(5) {
[0] => string(11) "Mode: burst"
[1] => string(16) "filename_1.pdf"
[2] => string(16) "filename_2.pdf"
[3] => string(0) ""
[4] => string(33) "2 page(s) in 1 file(s) processed."
}

最佳答案

您确定在您的 php 脚本中您提供的路径 (filename.pdf) 指向有效文件吗?

我会在脚本中创建一个绝对路径,通过 realpath 的审查,并将其作为命令中的参数提供。

此外,您还可以使用 getcwd 检查调用 exec 时使用的路径,并查看它是否与您在命令行上使用的路径相同。

关于php - 使用 PHP exec() 和 Python PDF 订书机工具将 PDF 拆分为单页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16703789/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com