【问题标题】:Create Highlight PDF annotations with Ghostscript使用 Ghostscript 创建高亮 PDF 注释
【发布时间】:2016-05-19 03:02:00
【问题描述】:

我有以下包含 pdfmark 的 PostScript 文件来创建高亮注释:

%PS

/Courier 30 selectfont
15 15 moveto
(Test)show

[ /Rect [0 0 80 30]
/Subtype /Highlight
/Color [.8 .8 0]
/QuadPoints [10 40 90 40 10 10 90 10]
/Contents (Test annotation)
/ANN pdfmark

showpage

(注意/QuadPoints字段的坐标不在the order the specs define中,如Adobe implements it differently。)

Ghostscript 创建一个带有注释的 PDF,但有两个问题:

  1. 它在 Adob​​e Reader 和 Okular 中有效,但在 Evince 中不可点击。
  2. 更重要的是:突出显示的区域不是矩形,而是具有圆形的左右边缘,如下图所示:

    为什么会这样,我怎样才能得到直边?

【问题讨论】:

    标签: pdf ghostscript postscript pdf-annotations


    【解决方案1】:

    您应该首先查看 PDF 文件的内容,然后查看 Ghostscript(或更准确地说是 pdfwrite 设备)在其中放入了什么。发布一个示例 PDF 文件来查看也是一个明智之举,并且还可以告诉我们您使用的是哪个版本的 Ghostscript。

    顺便说一句,标题应该是 %!PS,你错过了“!”。当然,既然它是一个评论,它对 PostScript 解释器来说并不重要。

    现在这是 Adob​​e Acrobat Distiller 的注释输出,使用您问题中的代码:

    1 0 obj
    <</Type/Annot/Subtype/Highlight/Rect[0 0 80 30]/C[.8 .8 0]/QuadPoints[10 40 90 40 10 10 90 10]/Contents(Test annotation)>>
    endobj
    

    Ghostscript 的 pdfwrite 设备也是如此:

    8 0 obj
    <</Type/Annot
    /Rect [0 0 80 30]
    /C [0.8 0.8 0]
    /QuadPoints [10 40 90 40 10 10 90 10]
    /Contents(Test annotation)
    /Subtype/Highlight>>endobj
    

    它们本质上是相同的。

    所以回答你的问题:

    1. 如果它在 Acrobat 中有效,那么也许您应该问 Evince 开发人员这个问题。

    2. 圆角边缘由读取 PDF 注释的应用程序绘制。由于 Acrobat 以这种方式绘制它们,因此其他所有人都这样做(包括 Ghostscript 的 PDF 解释器)。如果您不喜欢它,您将不得不更改查看应用程序。

    【讨论】:

    • 是的,似乎 Evince 在绘制注释时只是圆角。
    猜你喜欢
    • 1970-01-01
    • 2015-03-11
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多