TextEffectResolver Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kelas pembantu yang mengatur efek teks dalam kontainer teks.
public ref class TextEffectResolver abstract sealed
public static class TextEffectResolver
type TextEffectResolver = class
Public Class TextEffectResolver
- Warisan
-
TextEffectResolver
Contoh
Contoh berikut menunjukkan cara menerapkan TranslateTransformefek teks , , ScaleTransformdan RotateTransform ke teks. Di bawah ini adalah XAML untuk contoh.
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="SDKSample.TextEffectTargetExample"
Title="TextBlock Properties Sample">
<StackPanel>
<RadioButton Click="teTranslate" Margin="5,0,5,0">TranslateTransform</RadioButton>
<RadioButton Click="teScale" Margin="5,0,5,0">ScaleTransform</RadioButton>
<RadioButton Click="teRotate" Margin="5,0,5,0">RotateTransform</RadioButton>
<TextBlock Background="LightGray" TextWrapping="Wrap" Name="tb1">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Nam laoreet dolor et dolor. Vestibulum quis nunc auctor ante dignissim venenatis. Curabitur wisi.
Donec faucibus auctor ipsum. In fermentum dui. Ut suscipit aliquam eros. Nullam elementum quam eu
enim. Sed a purus id nisl imperdiet blandit. Cum sociis natoque penatibus et magnis dis parturient
montes, nascetur ridiculus mus. Sed at quam.
</TextBlock>
</StackPanel>
</Page>
Di bawah ini adalah kode di baliknya untuk contoh tersebut.
using System;
using System.Windows;
using System.Collections;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Documents;
namespace SDKSample
{
public partial class TextEffectTargetExample : Page
{
// Event handler for translating (moving) the text element.
public void teTranslate(object sender, RoutedEventArgs e)
{
// Wipe out existing TextEffects on the TextBlock
DisableTextEffects();
TextEffect myEffect = new TextEffect();
myEffect.PositionStart = 0;
myEffect.PositionCount = 999;
// Create a TranslateTransform that moves the TextBlock to an offset position of
// 50,50.
TranslateTransform myTranslateTransform = new TranslateTransform(50,50);
myEffect.Transform = myTranslateTransform;
// Apply the effect to the TextBlock
EnableTextEffects(tb1, myEffect);
}
// Event handler for transforming the size of the text element.
public void teScale(object sender, RoutedEventArgs e)
{
// Wipe out existing TextEffects on the TextBlock
DisableTextEffects();
TextEffect myEffect = new TextEffect();
myEffect.PositionStart = 0;
myEffect.PositionCount = 999;
// Create a ScaleTransform that scales the TextBlock by 5.
ScaleTransform myScaleTransform = new ScaleTransform(5,5);
myEffect.Transform = myScaleTransform;
// Apply the effect to the TextBlock
EnableTextEffects(tb1, myEffect);
}
public void teRotate(object sender, RoutedEventArgs e)
{
// Wipe out existing TextEffects on the TextBlock
DisableTextEffects();
TextEffect myEffect = new TextEffect();
myEffect.PositionStart = 0;
myEffect.PositionCount = 999;
// Create a ScaleTransform that rotates the text by 45 degrees.
RotateTransform myRotateTransform = new RotateTransform(45);
myEffect.Transform = myRotateTransform;
// Apply the effect to the TextBlock
EnableTextEffects(tb1, myEffect);
}
// Disable all existing text effects to make way for new ones.
private void DisableTextEffects()
{
if (_textEffectTargets != null)
{
foreach (TextEffectTarget target in _textEffectTargets)
target.Disable();
}
}
// Enable TextEffectTargets and apply effect to TextBlock.
private void EnableTextEffects(TextBlock tb, TextEffect effect)
{
_textEffectTargets = TextEffectResolver.Resolve(tb.ContentStart, tb.ContentEnd, effect);
foreach (TextEffectTarget target in _textEffectTargets)
target.Enable();
}
private TextEffectTarget[] _textEffectTargets;
}
}
Metode
| Nama | Deskripsi |
|---|---|
| Resolve(TextPointer, TextPointer, TextEffect) |
Mengatasi efek teks pada rentang teks ke daftar target efek teks. |