【问题标题】:How to stamp only the last page of a PDF如何仅在 PDF 的最后一页上盖章
【发布时间】:2013-12-13 18:12:42
【问题描述】:

我有以下代码用转换为 pdf 的图像标记 pdf。一切似乎都有效,除了它在 pdf 中的每一页上都加盖印章。我怎样才能让它只标记pdf的最后一页?

pdftk temp-pdfjam.pdf stamp signature-pdfjam.pdf output final/finalized.pdf

【问题讨论】:

    标签: pdf pdftk


    【解决方案1】:

    如果您只想使用 pdftk,看起来您必须使用 pdftk 的 cat 命令提取最后一页,加盖印章,然后将其与第一页连接 - 或准备一个带有适当的 PDF空白页数并使用“multistamp”命令。

    【讨论】:

    • 您知道还有其他更容易做到这一点的方法吗?
    • 不是我的头顶。你当然可以自己实现一些东西,但我怀疑这会更容易。也许还有其他工具可以做到,但我不知道。
    【解决方案2】:

    使用 pdftk 的工作 sn-p

    #!/bin/sh
    
    input=$1
    watermark=$2
    output=$3
    abl=/tmp/all_but_last.pdf
    last=/tmp/last.pdf
    last_stamped=/tmp/last_stamped.pdf
    
    # detach
    pdftk $1 cat 1-r2 output $abl 
    pdftk $1 cat end output $last 
    #Stamp
    pdftk $last stamp $watermark output $last_stamped
    #Attach
    pdftk $abl $last_stamped cat output $output
    

    将其作为 shell 脚本运行:

    ./stamp_last_page.sh input.pdf stamp.pdf output.pdf

    【讨论】:

    • 唉,文件大小受pdftk处理的影响
    【解决方案3】:

    试试cpdf:

    cpdf -stamp-on stamp.pdf in.pdf 1 -o out.pdf
    

    您可以将“1”替换为您想要的任何页面范围。

    【讨论】:

    • 请注意,cpdf 具有“特殊的非商业用途许可”(github.com/coherentgraphics/cpdf-binaries/blob/master/LICENSE)——对于像这样的应用程序,这些应用程序可以由开源工具很好地处理,我看不出有什么意义在投资 cpdf - 虽然不确定它在某些特殊用例中是否具有优势
    猜你喜欢
    • 2019-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-05
    相关资源
    最近更新 更多