You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PS解释器内让pdfwrite立即将输出刷新到磁盘?

解决GhostScript pdfwrite未刷新关闭PDF文件的问题
  • 调用pdfmark的/Close指令
    在完成当前PDF生成逻辑后,执行以下PostScript代码:

    [ /Close /PDF pdfmark
    

    该指令会直接通知pdfwrite驱动完成当前输出文件的写入并刷新关闭,无需依赖虚拟文件触发,执行后即可安全传输生成的PDF。

  • 显式刷新输出流
    若初始化pdfwrite时保留了输出流的引用,可直接对该流执行刷新操作:

    % 假设输出流存储在outstream变量中
    outstream flushfile
    

    此方式适用于自定义输出流的场景,能精准控制刷新时机。

  • 通过EndPage钩子自动触发
    初始化pdfwrite时定义/EndPage过程,在最后一页生成后自动执行刷新:

    <<
      /EndPage {
        2 eq { % 判断是否为最后一页
          [ /Close /PDF pdfmark
          true
        } if
        true
      } bind
    >> setpagedevice
    

    该方式适合多页文档的自动化处理,无需手动介入刷新操作。

注意事项

  • 以上操作均不会终止GhostScript进程,可继续在同一任务循环中生成下一份PDF。
  • 避免重复调用/Close指令,否则会导致后续pdfwrite输出异常,确保每次PDF生成后仅调用一次。

内容的提问来源于stack exchange,提问作者Terry Burton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 18:29:54