我認爲Document.Add()
立即將內容刷新到PDF文件(文件流),但看起來情況並非如此。什麼時候通過itextsharp將內容刷新到PDF文件?
回答
PDF是頁面描述語言。每一頁都是一組獨立的對象。內容存儲在一個或多個流中。 PDF中不存在段落或表格等。這只是在頁面上繪製的一系列線條,形狀和字形。
使用Add()
方法將內容添加到文檔時,此內容將轉換爲附加到頁面內容流的PDF語法。只要頁面已滿,該內容流和相應的頁面字典就會寫入輸出流並刷新。
不早於!
幾個對象,例如字體,交叉引用表,表單XObjects等都保存在內存中,因爲它們可以在文檔創建過程中更改。
在某些情況下,您可以儘早釋放這些對象。例如:有一個「發佈模板」方法來立即將Form XObject寫入輸出流。 Image XObjects總是立即寫入。
你的問題不是一個真正的問題。這是一個錯誤的假設。請澄清,如果你有一個真正的問題。
我有興趣知道什麼時候將pdf對象的內容刷新到文件中,並且可以在itextsharp中控制它(例如,只有在n個頁面之後將內容刷新到文件,而不是在每個頁面已滿後刷新內容。Doesn'這是有道理的嗎?我是新來的pdf語言 – Sameer
一旦它完成,等待刷新頁面內容流沒有意義,所以它不可能被置於「擱置」狀態。例如:當我們嵌入字體的一個子集時,我們會將該字體保留在內存中,因爲「將來」頁面可能需要爲該子集添加一個字形,該字形在上一頁未使用過。你的問題是有道理的,但措辭很尷尬(因爲它提出了一個未被證明的指控)。 –
- 1. 什麼時候刷新.pyc文件?
- 2. 什麼時候刷新BufferedWriter
- 3. iTextSharp:從其他PDF複製PDF內容時丟失了什麼?
- 4. 如何通過iTextsharp重新調整pdf內容的尺寸
- 5. 什麼時候應該刷新osgi?
- 6. iOS:UITableViewController - 什麼時候刷新(設計)?
- 7. 什麼時候需要在swing組件上調用revalidate()來刷新,什麼時候不刷新?
- 8. .csproj文件什麼時候更新?
- 9. 有什麼辦法可以通過iTextSharp來創建可編輯的PDF文件?
- 10. 通過ITextSharp創建PDF文件的波斯語html文件
- 11. PHP會話到期 - 它什麼時候刷新?
- 12. 什麼時候通過ref關鍵字
- 13. 什麼時候使用Server.Transfer通過PostBackURL?
- 14. 什麼時候通過NSURLConnection使用Restkit?
- 15. 什麼時候應該爲報亭應用推送新內容?
- 16. 什麼時候在Convention中通過配置添加新文件夾?
- 17. .NET容器 - 什麼時候是成員通過引用,按值?
- 18. 使用iTextSharp合併pdf文件的內容
- 19. 使用iTextSharp將PDF文件添加到現有的pdf集合
- 20. 如何通過itextsharp在c#.net中使版本兼容pdf文件
- 21. iTextsharp將語言添加到PDF文檔
- 22. 將頁碼添加到pdf文檔(itextsharp)
- 23. 什麼是插入JavaScript到現有的PDF文件(通過API)
- 24. 文本框內容刷新
- 25. 刷新內容外部txt文件
- 26. 動態刷新XML文件的內容
- 27. 刷新.ascx文件中的內容
- 28. 什麼時候將文件添加到Git中的分支?
- 29. 什麼時候應該在過渡到新的時候釋放當前的UIViewController?
- 30. 什麼時候更新DateTime.Now?
如果您只是將一個段落添加到文檔中,則將其添加到某個頁面。只有當頁面完成並且文檔開始下一頁時,纔有理由希望頁面(至少部分)寫入磁盤。但在關閉文檔之前,您無法確定。 – mkl
我很好奇你爲什麼想要知道這個以及你如何處理這些信息。這不是一個祕密,我只是好奇。 –
@Chris,我正在寫一個100K以上的記錄到pdf,這需要時間,所以我認爲只有在1K的批處理文件中刷新內容才能優化PDF文件的創建時間。 – Sameer