2016-10-12 91 views
1

我正在使用PDFsharp在我們的應用程序中讀取/寫入PDF。我試圖讓頁面的紙張大小顯示在元數據窗口中。我使用下面的代碼做相同的:獲取PDF的紙張大小

 // read PDF document into memory 
      var pdfDocument = PdfReader.Open(pdfPath); 

      // if PDF document has more than one page, then try to get the page size from first page 
      if (pdfDocument.Pages.Count > 0) 
      { 
        var pageSize = pdfDocument.Pages[0].Size.ToString(); 
      } // if 

但每次返回「未定義」的時候,我甚至嘗試爲MS Word中創建A4頁文檔。但它仍然返回'未定義'。

我也從HTML創建了一個PDF,但是頁面大小也是未定義的。

static void Main(string[] args) 
    { 
     // create PDF config to generate PDF 
     var config = new PdfGenerateConfig() 
        { 
        PageSize = PageSize.Letter, 
        PageOrientation = PageOrientation.Landscape 
        }; 

     // load the HTML file 
     var html = System.IO.File.ReadAllText(@"C:\Users\mohit\Desktop\Temp\Ekta\Test.html"); 

     // generate the PDF 
     var pdf = PdfGenerator.GeneratePdf(html, 
             PageSize.Letter); 

     // get the paper size of first page 
     var size = pdf.Pages[0].Size; 

     // save the pdf document 
     pdf.Save(@"C:\Users\mohit\Desktop\Temp\Ekta\A13.pdf"); 

     Console.ReadKey(); 
    } 
+0

這是另一個可以幫助你的問題:http://stackoverflow.com/questions/2370427/itextsharp-set-document-landscape-horizo​​ntal-a4 –

回答

0

,你必須使用的屬性是WidthHeight。如果您不想以磅爲單位顯示尺寸,請將它們轉換爲毫米或英寸。

屬性Size是一種爲新頁面設置標準頁面大小的方便方法,因爲您可以指定A4或Letter。它不會被設置爲導入的PDF文件。