我正在编写一些集成测试来验证转换为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"];
}
}
}
答案 0 :(得分:1)
作为评论者提到,基于the iText forum,iText不直接直接支持任何“线性化PDF”(又名“快速Web视图”)功能,因此不会说明PDF是否线性化。 / p>
也就是说,您可以查看the PDF specification附件F(从第675页开始)并使用其中描述的信息来实现您自己检查PDF是否线性化。
根据此规范,令牌/Linearized
应出现在文件的开头附近 - 您所要做的就是检查它是否存在。