RenderOptions.ClearTypeHint RenderOptions.ClearTypeHint RenderOptions.ClearTypeHint Attached Property

Definition

Ruft ab oder legt einen Wert ab, der Rendering-Engine angibt, ob Text mit ClearType gerendert werden kann.Gets or sets a value that indicates to the rendering engine whether text can be rendered with ClearType.

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

Beispiele

Das folgende Beispiel zeigt die ClearTypeHint Eigenschaft wirkt sich auf verschiedenen Verzweigungen der visuellen Struktur.The following example shows how the ClearTypeHint property affects different branches of the visual tree. In der ersten TextBlock-Steuerelement wird Text mit ClearType gerendert, da der Textblock im Hauptfenster die Einstellung erbt.In the first text block control, text is rendered with ClearType because the text block inherits the setting from the main window. Im zweiten Textblock, ClearType wird nicht verwendet, da des übergeordnete Elements des OpacityMask festgelegt wird.In the second text block, ClearType is not used because the parent element's OpacityMask property is set. Im dritten TextBlock ClearTypeHint verwendet wird, aber Renderingprobleme können auftreten.In the third text block, ClearTypeHint is used, but rendering issues may occur.

<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 der ClearTypeHint angefügte Eigenschaft, um anzugeben, dass Text mit ClearType in einem bestimmten Teil der visuellen Struktur gerendert werden kann.Use the ClearTypeHint attached property to indicate that text can be rendered with ClearType in a specific part of the visual tree.

ClearType-Text werden in einem Hintergrundthread, der nicht vollständig deckend ist, wird nicht richtig angezeigt.ClearType text does not display correctly on a background that is not fully opaque. Zwischenrenderingziele, z. B. Effect, OpacityMask, VisualBrush, DrawingBrush, Clip, und Opacity, Hintergründen, die nicht vollständig deckend sind können eingeführt werden.Intermediate render targets, such as Effect, OpacityMask, VisualBrush, DrawingBrush, Clip, and Opacity, can introduce backgrounds that are not fully opaque. WPF wird ClearType deaktiviert, wenn erkannt wird, dass der Puffer, in dem Text gezeichnet wird, einen transparenten Hintergrund hätte.WPF disables ClearType when it detects that the buffer into which text is drawn could have a transparent background.

Legen Sie die ClearTypeHint Eigenschaft Enabled um anzugeben, dass eine Teilstruktur für ClearType-Text-Rendering sicher ist.Set the ClearTypeHint property to Enabled to indicate that a subtree is safe for ClearType text rendering. Führen Sie dies nur, wenn Sie sicher sein können, dass die Textdarstellung einer vollständig deckend Hintergrund.Do this only when you can be certain that the text is rendering to a fully opaque background. Wenn ein Element in der Teilstruktur Transparenz eingeführt wird, können Sie ClearType aktivieren. Allerdings können die Renderingprobleme auftreten.When an element in the subtree introduces transparency, you can enable ClearType; however, rendering issues may occur. Wenn ein Teil der Teilstruktur weitere fortgeschrittene Renderingzwischenziele eingeführt werden, müssen Sie festlegen ClearTypeHint für die untergeordneten Elemente dieser Teilstruktur erneut.If a portion of the subtree introduces more intermediate rendering targets, you must set ClearTypeHint again on the children of that subtree.

Die folgende Liste enthält, wie Sie sicherstellen, dass Text mit ClearType gerendert werden korrekt angezeigt wird.The following list shows how to make sure that text to be rendered with ClearType appears correctly.

  • Configuration Manager keine Zwischenrenderingzielen zwischen ClearTypeHint und den Text mit ClearType gerendert werden soll.Do not introduce intermediate render targets between ClearTypeHint and the text to be rendered with ClearType.

  • Weisen Sie einen nicht transparenten Hintergrund, der so nah wie möglich, in der visuellen Struktur auf den Text ist.Assign an opaque background that is as close as possible in the visual tree to the text.

  • Beachten Sie, ClearTypeHint erneut aktiviert ClearType für eine Teilstruktur; allerdings wird ClearType-Rendering nicht erzwungen wird.Be aware that ClearTypeHint re-enables ClearType for a subtree; however, it does not force ClearType rendering.

  • Beachten Sie, ClearTypeHint überschreibt nicht die Systemeinstellungen oder TextRenderingMode Einstellungen.Be aware that ClearTypeHint does not override your system settings or TextRenderingMode settings.

Hinweis

Die ClearTypeHint angefügte Eigenschaft hat keine Auswirkungen auf die TextBox steuern; allerdings funktioniert mit den TextBlock Steuerelement.The ClearTypeHint attached property does not affect the TextBox control; however, it does work with the TextBlock control.

Hinweis

Bei zahlreichen Steuerelementen die ClearTypeHint angefügte Eigenschaft hat keine Auswirkungen, es sei denn, die Sie festlegen, dass einen nicht transparenten Hintergrund hinter dem Text.On many controls, the ClearTypeHint attached property has no effect unless you set an opaque background behind the text.

Verwenden Sie diese Eigenschaft im Code den Zugriff auf die GetClearTypeHint und SetClearTypeHint Methoden.To access this property in code, use the GetClearTypeHint and SetClearTypeHint methods.

Gilt für: