THotPDF.CopyLoadedSourceToStream

以保留來源位置的受限讀取,複製原始載入的 PDF 位元組

宣告

procedure CopyLoadedSourceToStream(Destination: TStream;
  MaxBytes: Int64; Checkpoint: TNotifyEvent = nil);

行為

這個 HPDFDoc 方法會複製保留的原始來源位元組,不儲存也不正規化目前的物件圖,並在成功與失敗時都還原借用的來源串流位置

載入加密檔案時,即使之後以密碼解密導致一般儲存捷徑失效,仍會保留一個獨立的原始讀取控制代碼;本方法複製的是原始密文,GetLoadedSourceFileSize 回報其大小

保留的原始控制代碼會在重新載入、解構與支援的原地遞增發布時釋放,並參與實體來源檔案別名檢查

MaxBytes 必須為正值且涵蓋完整來源長度;來源較大時會在第一次寫入前拋出 EHPDFIncrementalOutputBudget

Destination 不可為 nil,也不可與載入串流或同一底層檔案(包括硬連結)互為別名;原始來源不可用時拋出 EInvalidOpException

OperationCancellationToken 與 Checkpoint 會在讀取前與讀取期間以最多 64 KiB 的區塊檢查;checkpoint 收到的參數是 THotPDF 實例

本方法從 destination 目前的位置開始寫入,不會清除既有內容;取消、讀取錯誤或目的地失敗都可能留下部分複製結果,呼叫端應丟棄未成功的候選輸出

本方法不會序列化待寫入的物件變更,也不保證載入的物件圖仍與原始來源一致

相關主題

遞增式 PFX 簽署、THotPDF.SaveIncrementalUpdate