6

RenderTransform プロパティを使用して RichTextBox を拡大すると、ピクセル化された拡大テキスト (四角いテキスト エッジ) が得られます。

どうすればこれを防ぐことができますか? ここに画像の説明を入力

編集:

私は TextOptions.TextFormattingMode="Display" を持っています - このオプションを削除すると、すべて問題ありません!

4

2 に答える 2

2

現在の設定でこれを再現できるとは言えません:

ここに画像の説明を入力

これは 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>

一定の縮尺に達するとすぐに、テキストが明確になります。本当に奇妙です...

于 2011-05-01T20:24:07.823 に答える
1

これは私のために働いた:

TextOptions.TextFormattingMode="理想"

で提案されているように: http://www.newventuresoftware.com/blog/wpf-text-rendering-quirks-scaletransform

于 2016-05-19T21:21:59.067 に答える