CMetaFileDC
CMetaFileDC
dows圖元文件設備上下文,並將它附加給CMetaFileDC 也可以實現CMetaFileDC dows圖元文件設備上下文,並將其附加給CMetaFileDC對象CreateEn
目錄
Windows圖元文件包含了一序列圖形設備介面(GDI)命令,可以用來創建需要的圖像或文本。
為了實現Windows 圖元文件,首先要創建一個CMetaFileDC 對象。調用CMetaFileDC構造函數,然後調用Create成員函數,以創建Windows圖元文件設備上下文,並將它附加給CMetaFileDC 對象。
下一步將希望重複的CDC GDI命令序列發送給CMetaFileDC 對象。僅僅那些能夠創建輸出的GDI命令,例如MoveTo或LineTo,才能夠使用。
在給圖元文件發送了期待的命令后,調用Close成員函數,它將關閉圖元文件設備上下文,並返回圖元文件的句柄。之後就可以處理CMetaFileDC 對象。
CDC::PlayMetaFile能夠使用圖元文件的句柄,來重複播放圖元文件。這個圖元文件也可以由Windows函數,如CopyMetaFile進行操作,它將把圖元文件拷貝到磁碟中。
當不再需要圖元文件時,使用DeleteMetaFile Windows函數將其從內存中刪除。
也可以實現CMetaFileDC 對象,以便它能夠處理輸出調用及GDI屬性調用,如GetTextExtent。這樣,圖元文件就有更多的彈性,並能夠更容易重新使用一般的GDI代碼,它經常包含了輸出和屬性調用的混合。CMetaFileDC類從CDC繼承了兩個設備上下文,m_hDC和m_hAttribDC。m_hDC設備上下文處理所有的CDC GDI輸出調用,而m_hAttribDC設備上下文處理所有的CDC GDI屬性調用。一般而言,這兩個設備上下文屬於同一個設備。在CMetaFileDC情形下,屬性DC預設時設置為NULL。
另創建一個設備上下文,以指向屏幕、印表機或不同於圖元文件的其它設備,然後可以調用SetAttribDC成員函數,將新設備上下文與m_hAttribDC相關聯。GDI調用的信息將直接發送到新的m_hAttribDC值中,而輸出GDI調用也將送給代表圖元文件的m_hDC值。
#include
CMetaFileDC類的成員
構造函數
CMetaFileDC | 構造一個CMetaFileDC對象 |
初始化
Create | 創建Windows圖元文件設備上下文,並將其附加給CMetaFileDC對象 |
CreateEnhanced | 為增強格式的圖元文件創建圖元文件設備上下文 |
操作
Close | 關閉設備上下文,並創建圖元文件的句柄 |
CloseEnhanced | 關閉增強的圖元文件設備上下文,並創建增強格式的圖元文件 |