0

等方性マッピング モードを使用する C++/GDI 描画コードがあります。メモリ内のビットマップに描画するために C# プロジェクトで再利用しようとしている多くの描画コードを含む大きなオブジェクト モデルがあります。System.Graphics オブジェクトを適切に設定して同じ画像を生成するのに問題があります。System.Graphics オブジェクトで MM_ISOTROPIC マッピング モードに相当するものを設定する方法はありますか?

マッピング モードを準備する C++/GDI からの関連コードを次に示します。

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

1 に答える 1

0

MM_ISOTROPIC について特別なことは何もありません。SetViewportExt() と SetWindowExt() で競合する値を指定したとしても、X と Y のスケーリングが同じであることを確認するだけです。あなたはしません。正方形のピクセルを持たないハードウェアは残っていないと思います。

とにかく、Graphics.ScaleTransform()に等しい値を渡すようにしてください。

于 2009-02-26T20:09:18.290 に答える