2009-02-26 101 views
0

我有一些使用各向同性映射模式的C++/GDI繪圖代碼。我有一個大型的對象模型,其中有很多繪圖代碼,我試圖在C#項目中重用以繪製內存位圖。我在設置System.Graphics對象時遇到問題以生成相同的圖片。在System.Graphics對象中是否有任何設置MM_ISOTROPIC映射模式的方法?等價的MM_ISOTROPIC映射模式在Gdi +

以下是C++/GDI準備映射模式的相關代碼。

CDC* pDC = ... 
pDC->SetMapMode(MM_ISOTROPIC); 
pDC->SetWindowExt(24, 24); 
pDC->SetViewportExt(pDC->GetDeviceCaps(LOGPIXELSX), pDC->GetDeviceCaps(LOGPIXELSY)); 

回答

0

有沒有什麼特別的MM_ISOTROPIC,它只是確保在X和Y縮放是相同的,即使你給它SetViewPortExt函數()和SetWindowExt()衝突的值。你不這樣做。我認爲沒有剩下沒有方形像素的硬件。

Anyhoo,只要確保您將相同的值傳遞給Graphics.ScaleTransform()。

+1

什麼時候硬件沒有方形像素? – bobobobo 2009-06-23 01:43:57