在PDFTK的文档中没有提到如何做到这一点。命令:
pdftk file.pdf attach_files attachDoc.pdf to_page 2 output -
会将文件附加到原始file.pdf
的第2页,并将结果输出到<stdout>
。
attachDoc.pdf
是文件系统的文件名。但我无法为此指定任何描述,以使用适当的符号描述在最终文件中显示附件。
这在自动生成操作中特别有用,附件通常具有服务器分配的临时名称,并且描述是必要的
有没有办法做到这一点?
答案 0 :(得分:2)
简答:
使用
pdftk
时,您无法(当前)添加文件附件的说明 (但是,添加此功能应该不会太复杂,因为它只需要对文件附件字典进行额外的键入/Desc
...也许您应该向{{1}提交功能请求开发人员?)
更长的答案:
你可以在(最新版本的)Ghostscript的帮助下实现你想要的。 但要注意,这很复杂!
需要使用定义 pdfmark
operator 的特殊PostScript扩展程序。创建此运算符是为了将高级功能插入到PDF文件中,该文件无法在PostScript本身中使用。
我将在一个单独的文件的帮助下演示它,该文件使用一系列pdftk
操作将文本文件插入PDF。这是文本文件pdfmark
:
mypdfmark-for-attachments.ps
如您所见, [ /NamespacePush pdfmark
[ /_objdef {fstream} /type /stream /OBJ pdfmark
[ {fstream} << /Type /EmbeddedFile >> /PUT pdfmark
[ {fstream} (I only simulate text file content here...)
/PUT pdfmark
[ /Name <feff 0044 005a 005a 005a 005a 005a>
/FS<<
/Desc (dEsCrIpTiOn)
/Type /Filespec
/F (my.txt)
/EF <<
/F {fstream}
>>
>> /EMBED pdfmark
[ {fstream} /CLOSE pdfmark
[ /NamespacePop pdfmark
键包含我的说明文字/Desc
。
现在运行此Ghostscript命令:
dEsCrIpTiOn
以下是Acrobat显示的生成PDF文件的屏幕截图: