RenderOptions.ClearTypeHint Angefügte Eigenschaft

Definition

Ruft einen Wert ab, der für die Rendering-Engine angibt, ob Text mit ClearType gerendert werden kann, oder legt diesen fest.

see GetClearTypeHint, and SetClearTypeHint
see GetClearTypeHint, and SetClearTypeHint
see GetClearTypeHint, and SetClearTypeHint

Beispiele

Das folgende Beispiel zeigt, wie sich die ClearTypeHint -Eigenschaft auf verschiedene Verzweigungen der visuellen Struktur auswirkt. Im ersten Textblock-Steuerelement wird Text mit ClearType gerendert, da der Textblock die Einstellung vom Hauptfenster erbt. Im zweiten Textblock wird ClearType nicht verwendet, da die Eigenschaft des übergeordneten OpacityMask Elements festgelegt ist. Im dritten Textblock ClearTypeHint wird verwendet, aber Renderingprobleme können auftreten.

<Window x:Class="ClearTypeHintDemo.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300"
        AllowsTransparency="True" 
        WindowStyle="None" 
        RenderOptions.ClearTypeHint="Enabled" 
        Background="White">
    <Window.Resources>
        <LinearGradientBrush x:Key="opacityBrush" >
            <GradientStop Color="#FF000000" Offset="0.0" />
            <GradientStop Color="#00000000" Offset="1.0" />
        </LinearGradientBrush>
    </Window.Resources>

    <StackPanel>
        <TextBlock Text="This text is rendered with ClearType." />
        <StackPanel OpacityMask="{StaticResource opacityBrush}" >
            <TextBlock Text="This text is not rendered with ClearType." />
            <TextBlock RenderOptions.ClearTypeHint="Enabled" 
                       Text="This text is rendered with ClearType but may alpha-blend incorrectly." />
        </StackPanel>
    </StackPanel>
</Window>  

Hinweise

Verwenden Sie die ClearTypeHint angefügte Eigenschaft, um anzugeben, dass Text mit ClearType in einem bestimmten Teil der visuellen Struktur gerendert werden kann.

ClearType-Text wird auf einem Hintergrund, der nicht vollständig undurchsichtig ist, nicht ordnungsgemäß angezeigt. Zwischen Renderziele wie Effect, , OpacityMaskDrawingBrushVisualBrush, Clipund Opacitykönnen Hintergründe einführen, die nicht vollständig undurchsichtig sind. WPF deaktiviert ClearType, wenn erkannt wird, dass der Puffer, in den Text gezeichnet wird, einen transparenten Hintergrund haben kann.

Legen Sie die ClearTypeHint -Eigenschaft auf fest Enabled , um anzugeben, dass eine Unterstruktur für das Rendern von ClearType-Text sicher ist. Tun Sie dies nur, wenn Sie sicher sein können, dass der Text in einem vollständig undurchsichtigen Hintergrund gerendert wird. Wenn ein Element in der Unterstruktur Transparenz einführt, können Sie ClearType aktivieren. es können jedoch Renderingprobleme auftreten. Wenn ein Teil der Unterstruktur weitere Zwischenrenderingziele einführt, müssen Sie für die untergeordneten Elemente dieser Unterstruktur erneut festlegen ClearTypeHint .

Die folgende Liste zeigt, wie Sie sicherstellen, dass text, der mit ClearType gerendert werden soll, ordnungsgemäß angezeigt wird.

  • Führen Sie keine zwischengeschalteten Renderziele zwischen ClearTypeHint und dem text ein, der mit ClearType gerendert werden soll.

  • Weisen Sie dem Text einen undurchsichtigen Hintergrund zu, der in der visuellen Struktur so nah wie möglich ist.

  • Beachten Sie, dass ClearTypeHint ClearType für eine Unterstruktur erneut aktiviert wird. Es erzwingt jedoch kein ClearType-Rendering.

  • Beachten Sie, dass ClearTypeHint Ihre Systemeinstellungen oder TextRenderingMode -einstellungen nicht außer Kraft setzen.

Hinweis

Die ClearTypeHint angefügte Eigenschaft wirkt sich nicht auf das TextBox Steuerelement aus, funktioniert jedoch mit dem TextBlock -Steuerelement.

Hinweis

Bei vielen Steuerelementen hat die ClearTypeHint angefügte Eigenschaft keine Auswirkungen, es sei denn, Sie legen einen undurchsichtigen Hintergrund hinter dem Text fest.

Verwenden Sie die GetClearTypeHint Methoden und SetClearTypeHint , um im Code auf diese Eigenschaft zuzugreifen.

Gilt für: