Sdílet prostřednictvím


RenderOptions.ClearTypeHint Přidružená vlastnost

Definice

Získá nebo nastaví hodnotu, která označuje vykreslovací stroj, zda lze text vykreslit pomocí ClearType.

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

Příklady

Následující příklad ukazuje, jak ClearTypeHint vlastnost ovlivňuje různé větve stromu vizuálu. V prvním ovládacím prvku blok textu se text vykreslí pomocí ClearType, protože blok textu zdědí nastavení z hlavního okna. Ve druhém bloku textu se ClearType nepoužívá, protože je nastavena OpacityMask vlastnost nadřazeného prvku. Ve třetím bloku textu se používá, ClearTypeHint ale může dojít k problémům s vykreslováním.

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

Poznámky

Připojenou ClearTypeHint vlastnost použijte k označení, že text lze vykreslit pomocí ClearType v určité části stromu vizuálu.

Text ClearType se nezobrazuje správně na pozadí, které není zcela neprůshlené. Přechodné cíle vykreslování, jako Effectjsou , OpacityMask, VisualBrush, DrawingBrush, Clipa Opacity, můžou představovat pozadí, která nejsou zcela neprůsvná. WPF zakáže ClearType, když zjistí, že vyrovnávací paměť, do které je text vykreslen, může mít průhledné pozadí.

ClearTypeHint Nastavte vlastnost na, Enabled aby bylo zřejmé, že podstrom je bezpečný pro vykreslování textu ClearType. Uděláte to jenom v případě, že si můžete být jistí, že text se vykresluje na zcela neprůshlené pozadí. Když prvek v podstromu zavádí průhlednost, můžete povolit ClearType; může však dojít k problémům s vykreslováním. Pokud část podstromu zavádí více přechodných cílů vykreslování, musíte znovu nastavit ClearTypeHint podřízené objekty tohoto podstromu.

Následující seznam ukazuje, jak zajistit, aby se správně zobrazoval text, který se má vykreslit pomocí ClearType.

  • Nezavádět přechodné cíle vykreslování mezi ClearTypeHint a text, který se má vykreslovat pomocí ClearType.

  • Přiřaďte k textu neprůsné pozadí, které je ve vizuálním stromu co nejblíže.

  • Mějte na paměti, že ClearTypeHint znovu povolí ClearType pro podstrom, ale nevynucuje vykreslování ClearType.

  • Mějte na paměti, že ClearTypeHint nepřepíše nastavení nebo nastavení TextRenderingMode systému.

Poznámka

Připojená ClearTypeHint vlastnost nemá vliv na TextBox ovládací prvek, ale funguje s ním TextBlock .

Poznámka

U mnoha ovládacích prvků nemá připojená vlastnost žádný vliv, ClearTypeHint pokud nenastavíte neprůspežné pozadí za textem.

Pro přístup k této vlastnosti v kódu použijte GetClearTypeHint metody a SetClearTypeHint .

Platí pro