次の方法で共有


D1136: テキスト レンダリング モードの競合

このレンダー ターゲットに設定されているDWRITE_RENDERING_MODEとD2D1_TEXT_ANTIALIAS_MODEは、互いに互換性がありません。

 

考えられる原因

ID2D1RenderTarget::D rawGlyphRun や ID2D1DeviceContext::GetGlyphRunWorldBounds などのテキスト ベースの操作では、Direct2D では、デバイス コンテキストの現在のテキストアンチエイリアス オプションとDirectWriteアンチエイリアシング オプションが考慮されます。 アンチエイリアシングセマンティクスは、Direct2D と DirectWriteの間で若干異なります。 このメッセージは、指定された 2 つのアンチエイリアシング オプションが一致しない場合に発生します。

可能な修正方法

Direct2D テキストアンチエイリアシング モードがDirectWriteレンダリング モードと一致していることを確認するには、次の要件を満たしていることを確認します。 • D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPEの場合、DirectWriteレンダリング モードは OUTLINE または ALIASED ではない可能性があります。• D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALEの場合、DirectWrite レンダリング モードは ALIASED ではない可能性があります。• D2D1_TEXT_ANTIALIAS_MODE_ALIASEDの場合、DirectWriteレンダリング モードは CLEARTYPE オプションのいずれにも設定できません。 [改行]現在の Direct2D テキストアンチエイリアシング モードを変更するには、ID2D1RenderTarget::SetTextAntialiasMode を使用します。