【问题标题】:How to tell whether a PDF is tagged如何判断 PDF 是否被标记
【发布时间】:2012-06-02 06:11:29
【问题描述】:

是否可以通过编程方式确定 PDF 是否被“标记”(为了便于访问)?我正在使用 PHP,并且希望(如果可能)简单地读取 PDF 文件,如果标记则返回 true,否则返回 false。

我查看了FPDFTCPDF,但我不清楚它们是否可以提取这些信息。

【问题讨论】:

    标签: php pdf accessibility tcpdf fpdf


    【解决方案1】:

    在官方 ISO PDF-1.7 规范中(可从 Adob​​e 网站免费获得的副本),我在第 574 页阅读:

    “标记的 PDF 文档还应包含一个标记信息字典(参见表 321),其中 Marked 条目的值为 true。” em>

    对我来说这意味着......

    1. ...您必须解析 PDF 结构并
    2. ...查找文档目录
    3. ...应该有MarkInfo条目的地方
    4. ...指定一个标记信息字典
    5. ...其中应包含一个名为 Marked 的键,其布尔值为 true,用于标记的 PDF。

    【讨论】:

    • 这似乎总是显示为“>”,可以通过将 PDF 搜索为字符串来找到。谢谢!
    • @Terrill Thomson:是的,它可能适用于所有标记的 PDF 中的 95% 或更多。但是,如果您需要高可靠性,请不要仅仅依靠 grepping 来获取该字符串。 (此外,人们可以轻松地创建这样一个 PDF 声明自己以这种方式标记,但在实践中并没有“信守承诺”并且没有通过所有合规性检查......
    • @TerrillThompson:文档目录可以压缩。
    【解决方案2】:

    也许您可以使用this 走得更远(检查所有PDF_get_xx 函数)。 您还需要this 作为参考。

    基于此:

    Characteristics of a properly tagged PDF:
    
        - The PDF file includes a logical reading order for its content
        - Images are given correct alternate descriptions
        - Tables are correctly tagged to represent the table structure
        - Form-fields are authored to promote their utility to screen-readers
        - Represents text as Unicode to clear up composition irregularities such as soft
          and hard hyphens
    

    你可能会走得更远。

    【讨论】:

      猜你喜欢
      • 2012-02-05
      • 1970-01-01
      • 2014-03-09
      • 2011-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多