RenderTransform プロパティを使用して RichTextBox を拡大すると、ピクセル化された拡大テキスト (四角いテキスト エッジ) が得られます。
どうすればこれを防ぐことができますか?
編集:
私は TextOptions.TextFormattingMode="Display" を持っています - このオプションを削除すると、すべて問題ありません!
RenderTransform プロパティを使用して RichTextBox を拡大すると、ピクセル化された拡大テキスト (四角いテキスト エッジ) が得られます。
どうすればこれを防ぐことができますか?
編集:
私は TextOptions.TextFormattingMode="Display" を持っています - このオプションを削除すると、すべて問題ありません!
現在の設定でこれを再現できるとは言えません:
これは 20 のスケールです。これは ClearType システム設定に依存する可能性があると思います。RichTextboxRenderOptions.ClearTypeHint="Enabled"
で設定を試すことができます。
も設定してみてくださいTextOptions.TextRenderingMode="ClearType"
。
編集: このSOの質問は、テキストレンダリングを非常に詳細に扱っており、役立つ場合があります。
編集:この奇妙さをチェックしてください:
<TextBlock Text="Lorem ipsum dolor sit"
FontSize="20" TextOptions.TextFormattingMode="Display">
<TextBlock.RenderTransform>
<ScaleTransform x:Name="trans" ScaleY="10" ScaleX="10"/>
</TextBlock.RenderTransform>
<TextBlock.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation To="20" Duration="0:0:5"
Storyboard.TargetName="trans" Storyboard.TargetProperty="ScaleX"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>
一定の縮尺に達するとすぐに、テキストが明確になります。本当に奇妙です...
これは私のために働いた:
TextOptions.TextFormattingMode="理想"
で提案されているように: http://www.newventuresoftware.com/blog/wpf-text-rendering-quirks-scaletransform