2012-08-14 41 views
4

我正在編寫一些集成測試來驗證轉換爲PDF操作的正確性。在其中一項測試中,我想檢查PDF是否啓用了「Fast Web View」。我雖然這將是一個直接的測試,但我沒有找到任何提供這些信息的財產。我正在使用iTextShap並編寫我的測試C#。檢查使用iTextSharp是否在PDF上啓用了「Fast Web View」屬性

由於代碼總是幫助以可視化的問題,下面是什麼,我試圖做

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

iText不支持線性PDF,也不支持它們的開發路線:http://support.itextpdf.com/node/142 – kuujinbo 2012-08-14 17:26:17

回答

1

如前所述一個評論者,基於the iText forum一個簡單的例子,iText的不直接支持任何「線性PDF 「(又名」快速Web視圖「)直接具有特徵,因此不會說PDF是否被線性化。

也就是說,您可以查看the PDF specification附錄F(從第675頁開始),並使用其中描述的信息來實現您自己檢查PDF是否線性化。

根據這個規範,令牌/Linearized應該出現在文件的開頭附近 - 你所要做的就是檢查它是否存在。