私はCScrollViewでGDIを使用していくつかのグラフィックスとテキストを描画しています。私はズーム機能を実装する必要があります。ズームをからに変更する必要があります。をにズームする必要はありません。ここでGDI描画されたMFCのCScrollViewでズームを実装する方法
は私の最高のアイデアです:
- SetWindowExt/SetViewportExtと
使用MM_ANISOTROPICマッピングモード...このアプローチの問題は、それがテキストを拡大縮小しないということです。 MFCにテキストの拡大/縮小を強制する方法はありますか?私が考えることができるのは、選択したズーム値に応じてテキストのフォントサイズを設定することだけですが、これがうまくいくかどうかはわかりません...
blessにはStretchBltを使用し、 (SetScrollSizesで設定された)適切なサイズのクライアント領域に移動します。これは、テキストスケーリングの問題を解決します。
また、プロセスでアンチエイリアス効果があることが望ましいです。私は上記の両方の方法でこれを達成すべきだと思っていますが、どちらが良く見えるかはわかりません。また、後で(ドキュメント/ビューアーキテクチャからのMFCの標準実装を使用して)印刷/印刷プレビュー機能を実装する必要があります。そのため、互換性があるメソッドが必要です。
お願いします。行く方法と理由。他のオプションもありますか?
返事ありがとうございます、Jerry。残念なことに、あなたが言及したメソッドには2つの問題があります:DrawText APIを使用して描画されたテキストを拡大縮小したり、アンチエイリアス効果を持たない(おそらく座標とサイズの論理的な変換を行うためですが、LineTo関数は、 )。だから、私は上記の2番目の方法で私を残します(mem dcとStretchBltを描く) - それについてどう思いますか?あなたはそれをお勧めできますか? –