php - 如何在我的服务器上安装 Pdftk?

标签 php linux pdftk

我正在使用 Linux 服务器并尝试安装 Pdftk,但我在尝试弄清楚具体要做什么时遇到了问题。

我找到了以下关于如何安装它的文档,但它们主要指的是在本地 Windows 机器上安装它。

它们是: http://www.andrewheiss.com/blog/2009/07/29/installing-pdftk-php/

http://www.accesspdf.com/pdftk/#packages

有人可以帮助我弄清楚我需要将哪些文件放在服务器上的什么位置以便我可以引用 pdftk 吗?

最佳答案

Pdftk 是 iText 的一个版本,它已从 Java 转换为 C++,并使用命令行桥重建,以便从 PHP 应用程序轻松访问。

要在 Redhat/CentOS 上构建 pdftk,请按照以下说明进行操作。

ssh [server to install pdftk on]

现在我们在服务器中,我们需要创建目录来存储 pdftk。

cd /
sudo mkdir extra
cd extra
sudo mkdir src
cd src
sudo wget http://www.pdfhacks.com/pdftk/pdftk-1.41.tar.gz
sudo tar zxvf pdftk-1.41.tar.gz
cd pdftk-1.41/pdftk

现在我们需要安装 gcj 库。

sudo yum install java-1.4.2-gcj-compat-devel.i386

gcc-c++ 库没有随 gcj 包一起安装,所以我们现在安装它,这样我们就不会在编译过程中途遇到错误。

sudo yum install gcc-c++

如果您现在编译应用程序,您将收到一条警告,指出使用 tmpnam 是危险的,您应该使用 mkstemp。

sudo vi report.cc

从 VI 内部运行此程序以搜索并替换 tmpnam 方法。

:%s/tmpnam(/mkstemp(/g

按转义键并保存更改

:wq!

现在我们已经安装了所有的包,我们将开始编译pdftk-1.41

从/extra/src/pdftk-1.41/pdftk 运行以下命令

sudo make -f Makefile.RedHat

这将启动编译 java 文件并将其转换为 C++ 的构建过程。这可能需要几分钟才能将 iText 转换为 C++。去休息室用我们新的玛格丽塔机器给自己拿一杯玛格丽塔:)。

现在创建了 pdftk 文件,我们希望将它复制到/bin 目录,以便我们可以从任何地方运行它。

sudo cp pdftk /usr/local/bin

让我们确保构建成功并运行

pdftk --version

关于php - 如何在我的服务器上安装 Pdftk?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3146766/

相关文章:

Linux for armv8 - 避免所有空闲处理器状态

python - 文本方 block 出现在 linux 上的 phantomjs 而不是单词

PHPExcel 创建/样式化/保存 PDF 文档

node.js - 为什么通过 pdftk 将多页 PDF 重复拆分为单独的页面会更改这些页面的 md5 校验和?

php - 如何检测 foreach 循环中的第一个和最后一个元素?

php - 我无法在 Mpdf - CodeIgniter 创建的 chrome 中打开 pdf。 - 无法加载 PDF 文档

php - 在 php 中获取 referrer URL(包括参数)

linux - csh 中类似 Matlab 的命令历史完成

Ruby - 使用 pdftk 将多页 pdf 拆分为许多单页 pdf?

php - 连接两个表,但连接键位于查询字符串中