Udostępnij za pośrednictwem


RenderOptions.ClearTypeHint Właściwość dołączona

Definicja

Pobiera lub ustawia wartość wskazującą aparat renderowania, czy tekst można renderować za pomocą funkcji ClearType.

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

Przykłady

W poniższym przykładzie pokazano, jak ClearTypeHint właściwość wpływa na różne gałęzie drzewa wizualnego. W pierwszej kontrolce bloku tekstu tekst jest renderowany za pomocą funkcji ClearType, ponieważ blok tekstu dziedziczy ustawienie z okna głównego. W drugim bloku tekstu funkcja ClearType nie jest używana, ponieważ właściwość elementu nadrzędnego jest ustawiona OpacityMask . W trzecim bloku tekstu jest używany, ClearTypeHint ale mogą wystąpić problemy z renderowaniem.

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

Uwagi

Użyj dołączonej ClearTypeHint właściwości, aby wskazać, że tekst można renderować za pomocą funkcji ClearType w określonej części drzewa wizualnego.

Tekst ClearType nie jest poprawnie wyświetlany na tle, które nie jest w pełni nieprzezroczyste. Pośrednie obiekty docelowe renderowania, takie jak Effect, OpacityMask, VisualBrush, DrawingBrushClip, i Opacity, mogą wprowadzać tła, które nie są w pełni nieprzezroczyste. WPF wyłącza funkcję ClearType, gdy wykryje, że bufor, do którego jest rysowany tekst, może mieć przezroczyste tło.

ClearTypeHint Ustaw właściwość na Enabled , aby wskazać, że poddrzewo jest bezpieczne dla renderowania tekstu ClearType. Zrób to tylko wtedy, gdy można mieć pewność, że tekst jest renderowy do w pełni nieprzezroczystego tła. Gdy element w poddrzewie wprowadza przezroczystość, można włączyć funkcję ClearType; jednak mogą wystąpić problemy z renderowaniem. Jeśli część poddrzewa wprowadza bardziej pośrednie obiekty docelowe renderowania, należy ponownie ustawić ClearTypeHint dla elementów podrzędnych tego poddrzewa.

Poniższa lista pokazuje, jak upewnić się, że tekst do renderowania za pomocą funkcji ClearType jest wyświetlany poprawnie.

  • Nie należy wprowadzać pośrednich elementów docelowych renderowania między elementami ClearTypeHint i tekstem do renderowania za pomocą funkcji ClearType.

  • Przypisz nieprzezroczyste tło, które jest możliwie jak najbliżej drzewa wizualnego do tekstu.

  • Należy pamiętać, że ClearTypeHint ponownie włącza funkcję ClearType dla poddrzewa, ale nie wymusza renderowania typu ClearType.

  • Należy pamiętać, że ClearTypeHint nie zastępuje ustawień systemowych ani TextRenderingMode ustawień.

Uwaga

Dołączona ClearTypeHint właściwość nie ma wpływu na kontrolkę TextBox , ale działa z kontrolką TextBlock .

Uwaga

W przypadku wielu kontrolek dołączona właściwość nie ma wpływu, ClearTypeHint chyba że ustawisz nieprzezroczyste tło za tekstem.

Aby uzyskać dostęp do tej właściwości w kodzie, użyj GetClearTypeHint metod i SetClearTypeHint .

Dotyczy