Win32リッチエディットコントロールEM_FORMATRANGEには、コントロールのコンテンツを任意のデバイスコンテキストにレンダリングできるというメッセージがあります。これは、印刷または印刷プレビューによく使用されますが、任意のデバイスコンテキストで使用できます。FORMATRANGEこのメッセージは、次のように定義されている、と呼ばれる構造を受け入れます。
typedef struct _formatrange {
HDC hdc;
HDC hdcTarget;
RECT rc;
RECT rcPage;
CHARRANGE chrg;
} FORMATRANGE;
rcおよびの唯一のドキュメントrcPageは次のとおりです。
rc:レンダリングする領域。単位はtwipで測定されます。
rcPage:レンダリングデバイス上のページの全領域。単位はtwipで測定されます。との値は
rc、rcPageを使用して取得できますGetDeviceCaps。
rcPageとrcの違いが何であるかは私には完全にはわかりません。私がオンラインで見たコード例は、これらの両方を同じ長方形に設定しているようです。Microsoft独自の例リッチエディットコントロールのコンテンツを印刷する方法は完全に初期化に失敗しrcPage、実際には未定義のデータをリッチエディットコントロールに渡します。
rcPageリッチエディットコントロールでも使用されていますか?2番目の長方形がこのコマンドの動作に影響を与えるのに役立つ理由がわかりません。それでは、何のためにあるのでしょうか。との違いを説明する例を誰かが提供できますrcかrcPage?