Aracılığıyla paylaş


RenderOptions.ClearTypeHint İliştirilmiş Özellik

Tanım

Metnin ClearType ile işlenip işlenemeyeceğini işleme altyapısına gösteren bir değer alır veya ayarlar.

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

Örnekler

Aşağıdaki örnekte özelliğin görsel ağacının ClearTypeHint farklı dallarını nasıl etkilediği gösterilmektedir. İlk metin bloğu denetiminde metin, ayarı ana pencereden devraldığından, metin ClearType ile işlenir. İkinci metin bloğunda, üst öğenin OpacityMask özelliği ayarlandığından ClearType kullanılmaz. Üçüncü metin bloğunda ClearTypeHint kullanılır, ancak işleme sorunları oluşabilir.

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

Açıklamalar

Metnin görsel ağacının ClearTypeHint belirli bir bölümünde ClearType ile işlenebileceğini belirtmek için ekli özelliğini kullanın.

ClearType metni tam olarak opak olmayan bir arka planda doğru görüntülenmez. , OpacityMask, , VisualBrush, DrawingBrushClipve Opacitygibi Effectara işleme hedefleri, tamamen opak olmayan arka planlar oluşturabilir. WPF, metnin çizildiği arabelleğin saydam bir arka plana sahip olabileceğini algıladığında ClearType'ı devre dışı bırakır.

Bir alt ağacın ClearTypeHint ClearType metin işleme için güvenli olduğunu belirtmek için özelliğini Enabled olarak ayarlayın. Bunu yalnızca metnin tamamen donuk bir arka plana işlendiğinden emin olduğunuzda yapın. Alt ağaçtaki bir öğe saydamlık sağladığında ClearType'ı etkinleştirebilirsiniz; ancak işleme sorunları oluşabilir. Alt ağacının bir bölümü daha fazla ara işleme hedefi tanıtırsa, bu alt ağacın alt öğelerini yeniden ayarlamanız ClearTypeHint gerekir.

Aşağıdaki listede ClearType ile işlenecek metnin doğru göründüğünden nasıl emin olunacağı gösterilmektedir.

  • ClearType ile işlenecek metin ile arasında ClearTypeHint ara işleme hedeflerini tanıtmayın.

  • Metne görsel ağaçta mümkün olduğunca yakın olan opak bir arka plan atayın.

  • Bir alt ağaç için ClearType'ı yeniden etkinleştirdiğini ClearTypeHint unutmayın; ancak ClearType işlemeyi zorlamaz.

  • Sistem ayarlarınızı veya TextRenderingMode ayarlarınızı geçersiz kılmadığını unutmayınClearTypeHint.

Uyarı

Ekli ClearTypeHint özellik denetimi etkilemez TextBox ; ancak denetimle TextBlock çalışır.

Uyarı

Birçok denetimde ClearTypeHint , metnin arkasında opak bir arka plan ayarlamadığınız sürece ekli özelliğin hiçbir etkisi olmaz.

Kodda bu özelliğe erişmek için ve SetClearTypeHint yöntemlerini kullanınGetClearTypeHint.

Şunlara uygulanır