Condividi tramite


RenderOptions.ClearTypeHint Proprietà associata

Definizione

Ottiene o imposta un valore che indica al motore di rendering se è possibile eseguire il rendering del testo con ClearType.

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

Esempio

Nell'esempio seguente viene illustrato come la ClearTypeHint proprietà influisce su rami diversi dell'albero visivo. Nel primo controllo blocco di testo il testo viene eseguito con ClearType perché il blocco di testo eredita l'impostazione dalla finestra principale. Nel secondo blocco di testo ClearType non viene usato perché la proprietà dell'elemento OpacityMask padre è impostata. Nel terzo blocco di testo viene usato, ClearTypeHint ma potrebbero verificarsi problemi di rendering.

<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>

Commenti

Utilizzare la proprietà associata per indicare che è possibile eseguire il ClearTypeHint rendering del testo con ClearType in una parte specifica dell'albero visivo.

Il testo ClearType non viene visualizzato correttamente in uno sfondo che non è completamente opaco. Le destinazioni di rendering intermedie, ad esempio Effect, ClipDrawingBrushOpacityMaskVisualBrushe , Opacitypossono introdurre sfondi che non sono completamente opachi. WPF disabilita ClearType quando rileva che il buffer in cui viene disegnato il testo potrebbe avere uno sfondo trasparente.

Impostare la proprietà su Enabled per indicare che un sottoalbero è sicuro per il ClearTypeHint rendering del testo ClearType. Eseguire questa operazione solo quando è possibile assicurarsi che il testo venga eseguito il rendering in uno sfondo completamente opaco. Quando un elemento nel sottoalbero introduce la trasparenza, è possibile abilitare ClearType; tuttavia, i problemi di rendering possono verificarsi. Se una parte del sottoalbero introduce più destinazioni di rendering intermedie, è necessario impostare ClearTypeHint di nuovo sugli elementi figlio di tale sottoalbero.

Nell'elenco seguente viene illustrato come assicurarsi che il testo da eseguire con ClearType venga visualizzato correttamente.

  • Non introdurre destinazioni di rendering intermedie tra ClearTypeHint e il testo da eseguire con ClearType.

  • Assegnare uno sfondo opaco che è il più vicino possibile nell'albero visivo al testo.

  • Tenere presente che ClearTypeHint riabilita ClearType per un sottoalbero, ma non forza il rendering di ClearType.

  • Tenere presente che ClearTypeHint non esegue l'override delle impostazioni o TextRenderingMode delle impostazioni del sistema.

Nota

La ClearTypeHint proprietà associata non influisce sul TextBox controllo, ma funziona con il TextBlock controllo.

Nota

In molti controlli la ClearTypeHint proprietà associata non ha alcun effetto a meno che non si imposta uno sfondo opaco dietro il testo.

Per accedere a questa proprietà nel codice, usare i GetClearTypeHint metodi e SetClearTypeHint .

Si applica a