我需要从现有的pdf创建pdf。将现有 pdf 复制到新 pdf 中,新 pdf 将受到密码保护(文件打开密码)。
我可以使用PHP mpdf来做到这一点。只是想知道 nodejs 是否可行。
要求很简单:
1-将现有pdf复制到新的pdf中。 2-密码保护新的pdf。
谢谢
是的,可以使用 QPDFEncrypt
PDF 的nodejs
。
步骤:
1.安装:
使用以下命令在您的机器/服务器上安装 QPDF
sudo apt-get install qpdf
或
brew install qpdf
2.检查它是否正常工作
qpdf --encrypt user-password owner-password key-length flags -- source-file-path destination-file-path
例如:
qpdf --encrypt test test 40 -- Downloads/1.pdf Downloads/encrypted.pdf
现在
i.尝试打开"下载"文件夹中的加密.pdf文件。
ii.它将要求输入密码,输入加密PDF文件时给出的密码测试。现在您可以打开文件,这意味着QPDF正在工作。
如何在nodejs中做到这一点?
你可以在nodejs中使用子进程或shelljs做同样的事情
法典:
var exec = require('child_process').exec;
var cmd = 'qpdf --encrypt test test 40 -- Downloads/1.pdf Downloads/encryptpdfvianode.pdf';
exec(cmd, function (err){
if (err){
console.error('Error occured: ' + err);
}else{
console.log('PDF encrypted :)');
}
});
Note:
你也可以看看node-qpdf npm包。