檢視原始碼 wxPrintPreview (wx v2.4.3)
此類別的物件管理列印預覽程序。
此物件會被傳遞一個 wxPrintout
物件,而 wxPrintPreview
物件本身則會被傳遞給 wxPreviewFrame
物件。預覽會透過初始化並顯示預覽框架來啟動。與 wxPrinter:print/4
不同,控制流程會在框架顯示後立即返回應用程式。
注意:顯示的預覽僅在 Windows 上是精確的。在其他平台上,用於預覽的 wxDC
與用於列印的不同,並且結果可能會有顯著差異,具體取決於輸出的建立方式。特別是,嚴重依賴 wxDC:getTextExtent/3
的列印程式碼(例如,wxHtmlEasyPrinting
和其他 wxHTML 類別)會受到影響。建議在提供原生預覽功能的平台上使用原生預覽功能 (macOS, GTK+)。
請參閱
wxWidgets 文件:wxPrintPreview
摘要
函式
銷毀物件
取得用於顯示列印預覽影像的預覽視窗。
取得目前正在預覽的頁面。
取得用於顯示列印預覽畫布和控制列的框架。
返回最大頁碼。
返回最小頁碼。
取得與 wxPrintPreview
物件關聯的預覽列印輸出物件。
取得將用於從預覽介面列印的列印輸出物件,如果不存在則為 NULL。
如果 wxPrintPreview
有效則返回 true,否則返回 false。
建構子。
這會使用預覽影像重新整理預覽視窗。
使用 wxPrintPreview
建構子中提供的第二個 wxPrintout
物件調用列印程序。
將頁面渲染到 wxMemoryDC
中。
設定將用於顯示列印預覽影像的視窗。
設定要預覽的目前頁面。
設定將用於顯示列印預覽畫布和控制列的框架。
將列印輸出物件與 wxPrintPreview
物件相關聯。
設定預覽縮放百分比,並相應地重新整理預覽畫布。
類型
-type wxPrintPreview() :: wx:wx_object().
函式
-spec destroy(This :: wxPrintPreview()) -> ok.
銷毀物件
-spec getCanvas(This) -> wxPreviewCanvas:wxPreviewCanvas() when This :: wxPrintPreview().
取得用於顯示列印預覽影像的預覽視窗。
-spec getCurrentPage(This) -> integer() when This :: wxPrintPreview().
取得目前正在預覽的頁面。
-spec getFrame(This) -> wxFrame:wxFrame() when This :: wxPrintPreview().
取得用於顯示列印預覽畫布和控制列的框架。
-spec getMaxPage(This) -> integer() when This :: wxPrintPreview().
返回最大頁碼。
-spec getMinPage(This) -> integer() when This :: wxPrintPreview().
返回最小頁碼。
-spec getPrintout(This) -> wxPrintout:wxPrintout() when This :: wxPrintPreview().
取得與 wxPrintPreview
物件關聯的預覽列印輸出物件。
-spec getPrintoutForPrinting(This) -> wxPrintout:wxPrintout() when This :: wxPrintPreview().
取得將用於從預覽介面列印的列印輸出物件,如果不存在則為 NULL。
-spec isOk(This) -> boolean() when This :: wxPrintPreview().
如果 wxPrintPreview
有效則返回 true,否則返回 false。
如果初始化印表機裝置上下文時出現問題(例如,未設定目前的印表機),則可能返回 false。
-spec new(Printout) -> wxPrintPreview() when Printout :: wxPrintout:wxPrintout().
等同於 new(Printout, [])
。
-spec new(Printout, [Option]) -> wxPrintPreview() when Printout :: wxPrintout:wxPrintout(), Option :: {printoutForPrinting, wxPrintout:wxPrintout()} | {data, wxPrintDialogData:wxPrintDialogData()}.
建構子。
傳遞列印輸出物件、一個用於實際列印的可選列印輸出物件,以及印表機資料的可選區塊的地址,該區塊將被複製到列印預覽物件的列印資料中。
如果 printoutForPrinting
為非 NULL,則會在預覽框架上放置一個 "Print..."
按鈕,以便使用者可以直接從預覽介面列印。
備註:在調用此建構子後,請勿明確刪除列印輸出物件,因為它們會在 wxPrintPreview
解構子中被刪除。這不適用於 data
參數。
使用 isOk/1
來檢查 wxPrintPreview
物件是否已正確建立。
-spec new(Printout, PrintoutForPrinting, Data) -> wxPrintPreview() when Printout :: wxPrintout:wxPrintout(), PrintoutForPrinting :: wxPrintout:wxPrintout(), Data :: wxPrintData:wxPrintData().
-spec paintPage(This, Canvas, Dc) -> boolean() when This :: wxPrintPreview(), Canvas :: wxPreviewCanvas:wxPreviewCanvas(), Dc :: wxDC:wxDC().
這會使用預覽影像重新整理預覽視窗。
必須從預覽視窗的 OnPaint 成員中呼叫。
實作只是將預覽點陣圖 blit 到畫布上,如果不存在則建立新的預覽點陣圖。
-spec print(This, Prompt) -> boolean() when This :: wxPrintPreview(), Prompt :: boolean().
使用 wxPrintPreview
建構子中提供的第二個 wxPrintout
物件調用列印程序。
通常會由預覽框架控制列上的 Print
... 面板項目呼叫。
如果發生錯誤,則返回 false - 呼叫 wxPrinter:getLastError/0
以取得有關錯誤種類的詳細資訊。
-spec renderPage(This, PageNum) -> boolean() when This :: wxPrintPreview(), PageNum :: integer().
將頁面渲染到 wxMemoryDC
中。
由 wxPrintPreview
內部使用。
-spec setCanvas(This, Window) -> ok when This :: wxPrintPreview(), Window :: wxPreviewCanvas:wxPreviewCanvas().
設定將用於顯示列印預覽影像的視窗。
-spec setCurrentPage(This, PageNum) -> boolean() when This :: wxPrintPreview(), PageNum :: integer().
設定要預覽的目前頁面。
-spec setFrame(This, Frame) -> ok when This :: wxPrintPreview(), Frame :: wxFrame:wxFrame().
設定將用於顯示列印預覽畫布和控制列的框架。
-spec setPrintout(This, Printout) -> ok when This :: wxPrintPreview(), Printout :: wxPrintout:wxPrintout().
將列印輸出物件與 wxPrintPreview
物件相關聯。
-spec setZoom(This, Percent) -> ok when This :: wxPrintPreview(), Percent :: integer().
設定預覽縮放百分比,並相應地重新整理預覽畫布。