RenderPageToMetafileStream
渲染和列印
描述
此函數僅在 Delphi 版本中可用;它將所選文件中的頁面轉譯至 TStream 中作為 Windows 中記檔(向量輸出),從而保留頁面的文字和向量內容,而不是將其點陣化為像素
選取的 Format 控制中記檔變體:mfEMF 使用傳統 GDI 增強型中記檔路徑(廣泛的消費者相容性),mfEMFPlus 和 mfEMFDual 使用 GDI+ 記錄路徑(對透明度和消除鋸齒有更好的逼真度),而 mfWMF 則產生舊版 16 位元格式
mfEMFDual 在同一個檔案中同時記錄 GDI 和 GDI+ 命令,以便僅限舊版 GDI 的取用端仍可以讀取它,代價是檔案大小較大;當您知道取用端支援 GDI+ 時(Office、Illustrator、現代檢視器),請偏好使用 mfEMFPlus
在內部,這是對 RenderPageToStream 的便利包裝,將 Format 對應到整數的 Options 值,因此 DPI 仍然會乘以透過 SetRenderScale 設定的每執行個體 RenderScale
語法
Delphi
Function TPDFlib.RenderPageToMetafileStream(DPI: Double; Page: Integer; Format: TPDFlibMetafileFormat; Target: TStream): Integer;
參數
| DPI | 轉譯頁面時使用的 DPI,用以控制中繼檔框架維度;向量內容本身與 DPI 無關 |
|---|---|
| Page | 要轉譯的頁碼 |
| Format | mfEMF = 傳統 GDI EMF;mfEMFPlus = GDI+ EMF+ Only;mfEMFDual = GDI+ EMF+ Dual(GDI + GDI+ 記錄,較大但相容性廣);mfWMF = 舊版 16 位元 WMF |
| Target | 要放入轉譯後中繼檔位元組的資料流 |
傳回值
| 0 | 頁面無法轉譯 |
|---|---|
| 1 | 頁面已正確轉譯,且中繼檔位元組已寫入至串流 |