BeginPageUpdate
Bố cục trang
Mô tả
Mở một transaction vẽ theo lô trên trang đang chọn. Các lời gọi vẽ về sau (chữ, path, ảnh, chú thích) được buffer thành một lô và flush vào content stream của trang khi một lời gọi EndPageUpdate tương ứng được thực hiện
Dùng hàm này khi ghép một trang phức tạp từ nhiều hình nguyên thủy vẽ nhỏ, nhất là khi mở lại một trang đã lưu trước đó để sửa. Việc gộp lô tránh chi phí serialize content stream cho từng lần gọi và giữ content stream của trang kết quả gọn gàng, đúng cấu trúc
Cú pháp
Delphi
Function TPDFlib.BeginPageUpdate: Integer;
ActiveX
Function PDFlib::BeginPageUpdate() As Long
DLL
int DLBeginPageUpdate(int InstanceID);
Giá trị trả về
| 0 | Failed — no document is open or no page is currently selected. |
|---|---|
| 1 | Transaction vẽ theo lô đã được bắt đầu |
Ghi chú
Mỗi lần gọi BeginPageUpdate phải đi cặp với một lần gọi EndPageUpdate trên cùng trang. Cặp này không bắt buộc tuyệt đối khi thêm nội dung vào một trang mới toanh vừa được NewPage tạo; khi đó trang đã ở trạng thái "mở để ghi". Cặp này có bắt buộc khi mở lại một trang đã đóng trước đó (sau EndPage hay sau khi nạp tài liệu) và sửa nội dung của nó
Không hỗ trợ gọi lồng nhau – hãy gọi EndPageUpdate trước khi mở một trang khác để chỉnh sửa.
Ví dụ
// Add a stamp on an existing page of a loaded document
PDF.LoadFromFile('contract.pdf', '');
PDF.SelectPage(1);
PDF.BeginPageUpdate;
PDF.SetTextColor(0.8, 0, 0);
PDF.SetFontSize(48);
PDF.PrintText(150, 400, 'DRAFT');
PDF.EndPageUpdate;
PDF.SaveToFile('contract-stamped.pdf');Xem thêm
EndPageUpdate, SelectPage, NewPage, EndPage