【问题标题】:Issues in Updating Metadata while Generating PDF生成 PDF 时更新元数据的问题
【发布时间】:2014-04-29 06:43:59
【问题描述】:

我正在开发一个将 FrameMaker Book 保存为 PDF 的扩展脚本。该脚本能够保存到 PDF,但是当我尝试添加 PDF 元数据(作者/创建日期/关键字/主题/标题)等时,生成的 PDF 中并没有反映出来。

在 Closure 检查时,我发现 Metadata 元素未添加到 Book 的 PDFDocInfo 属性中。

这是我为更新 PDFDocInfo 中的作者详细信息而编写的代码

$.writeln("Length before"  + doc.PDFDocInfo.length);
doc.PDFDocInfo.push("Author");
doc.PDFDocInfo.push("Mr Bond");
$.writeln("Length after"  + doc.PDFDocInfo.length);

其中 doc 是 Book 类型的对象

输出是

Length before0
Length after0

PDFDocInfo 现在是否应该没有 2 个元素。我在这里有什么遗漏吗?

【问题讨论】:

  • jongware 生成的文档说 (jongware.com/idjshelp.html) "PDFDocInfo Strings readwrite 包含一个字符串列表,表示当您将书籍保存为 PDF 时要在 PDF Document Info 字典中设置的值。每个字典条目表示为一对字符串;第一个字符串表示字段名称,第二个字符串表示字段值。"也许尝试通过 UI 设置一些信息,然后通过脚本读取 PDFDocInfo。如果它需要 2 个字符串,则它可能不是数组。它可能是一个对象。这只是一个猜测。我没有也从未使用过 FrameMaker。

标签: pdf-generation extendscript framemaker


【解决方案1】:

下面的代码成功了……

        var pdfDocInfo = new Strings();
        pdfDocInfo.push("Author");
        pdfDocInfo.push("Mr Bond");
        book.PDFDocInfo = pdfDocInfo;

【讨论】:

    猜你喜欢
    • 2014-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-08
    相关资源
    最近更新 更多