我正在尝试用pdftk ... attach_files
和pdftk ... unpack_files
将包括子目录层次结构的附件打包和解包到PDF。然而,虽然attach_files
能够通过在文件名中包含/
分隔符来表示子目录信息,但unpack_files
将所有文件放在一个平面目录中,如果多次出现相同的名称,则会自动覆盖文件。拆包时是否可以保留层次结构?
作为我使用的变通方法:
- 将附件打包到一个zip文件中并附加该zip文件。但是,通过这种方式,附件层次结构不再容易访问
- 对路径名应用双射变换,将层次结构映射到平面结构并返回。但是,只有通过执行转换的脚本才能使用这种方式进行解包
最好能够直接保存已经存储在PDF中的层次结构信息。
不幸的是,当前版本的pdftk没有,它被硬编码为在附加和拆包文件时都会删除路径信息。事实上,如果使用pdftk将任何层次结构信息存储在PDF中,我会感到惊讶。
话虽如此,写一个补丁来改变这种行为并不难,我建议用功能请求打开一个问题。