使用iTextSharp检查PDF是否启用了“Fast Web View”属性

时间:2012-08-14 13:37:16

标签: c# itextsharp

我正在编写一些集成测试来验证转换为PDF操作的正确性。在其中一个测试中,我想检查PDF是否启用了“快速Web视图”。我虽然这是一个直接的测试,但我没有找到任何提供该信息的属性。我正在使用iTextShap并编写我的测试C#。

由于代码总是有助于可视化问题,下面是我正在尝试做的一个简单示例

using System;
using System.Collections;
using iTextSharp.text.pdf;

namespace ValidationTools
{
    public class PDFValidator
    {
        readonly PdfReader _readerInstance;

        /// <summary>
        /// Constructor taking a path to a PDF as string
        /// </summary>
        /// <param name="pdfPath"></param>
        public PDFValidator(string pdfPath)
        {
            _readerInstance = new PdfReader(pdfPath);
        }

        //THIS IS WHAT I AM TRYING TO DO
        public bool VerifyIfFastWebViewIsEnabled() {
            return (bool)_readerInstance["FASTWEBVIEW"];
        }
    }
} 

1 个答案:

答案 0 :(得分:1)

作为评论者提到,基于the iText forum,iText不直接直接支持任何“线性化PDF”(又名“快速Web视图”)功能,因此不会说明PDF是否线性化。 / p>

也就是说,您可以查看the PDF specification附件F(从第675页开始)并使用其中描述的信息来实现您自己检查PDF是否线性化。

根据此规范,令牌/Linearized应出现在文件的开头附近 - 您所要做的就是检查它是否存在。