Поделиться через


GlyphRunDrawing Класс

Определение

Представляет объект Drawing, который отрисовывает GlyphRun.

public ref class GlyphRunDrawing sealed : System::Windows::Media::Drawing
public sealed class GlyphRunDrawing : System.Windows.Media.Drawing
type GlyphRunDrawing = class
    inherit Drawing
Public NotInheritable Class GlyphRunDrawing
Inherits Drawing
Наследование

Примеры

В следующем примере используется GlyphRunDrawing для рисования текста Hello World.

GlyphRun theGlyphRun = new GlyphRun(
    new GlyphTypeface(new Uri(@"C:\WINDOWS\Fonts\TIMES.TTF")),
    0,
    false,
    13.333333333333334,
    new ushort[]{43, 72, 79, 79, 82, 3, 58, 82, 85, 79, 71},
    new Point(0, 12.29),
    new double[]{
        9.62666666666667, 7.41333333333333, 2.96, 
        2.96, 7.41333333333333, 3.70666666666667, 
        12.5866666666667, 7.41333333333333, 
        4.44, 2.96, 7.41333333333333},
    null,
    null,
    null,
    null,
    null,
    null

    );

GlyphRunDrawing gDrawing = new GlyphRunDrawing(Brushes.Black, theGlyphRun);
<GlyphRunDrawing ForegroundBrush="Black">
  <GlyphRunDrawing.GlyphRun>
    <GlyphRun 
      CaretStops="{x:Null}" 
      ClusterMap="{x:Null}" 
      IsSideways="False" 
      GlyphOffsets="{x:Null}" 
      GlyphIndices="43 72 79 79 82 3 58 82 85 79 71" 
      BaselineOrigin="0,12.29"  
      FontRenderingEmSize="13.333333333333334" 
      DeviceFontName="{x:Null}" 
      AdvanceWidths="9.62666666666667 7.41333333333333 2.96 2.96 7.41333333333333 3.70666666666667 12.5866666666667 7.41333333333333 4.44 2.96 7.41333333333333" 
      BidiLevel="0">
      <GlyphRun.GlyphTypeface>
        <GlyphTypeface FontUri="C:\WINDOWS\Fonts\TIMES.TTF" />
      </GlyphRun.GlyphTypeface>
    </GlyphRun>
  </GlyphRunDrawing.GlyphRun>
</GlyphRunDrawing>

GlyphRun — это низкоуровневый объект, предназначенный для использования с представлением документа фиксированного формата и сценариями печати. Более простой способ рисования текста на экране — использовать Label или TextBlock. Дополнительные сведения о GlyphRunсм. в общие сведения об объекте GlyphRun и элементе Glyphs.

Комментарии

Объект GlyphRun представляет последовательность глифов из одного лица одного шрифта с одним размером и с одним стилем отрисовки.

GlyphRun содержит сведения о шрифте, такие как индексы глифов и отдельные позиции глифа. Кроме того, GlyphRun содержит исходные точки кода Юникода, из которые был создан запуск, символ для сведений о сопоставлении смещения буфера глифа, а также флаги для каждого символа и глифа.

Каждый глиф в GlyphRun определяет метрики, определяющие, как он соответствует другим Glyphs. На следующем рисунке определяются различные типографические качества двух разных глифов.

Диаграф измерений глифов
Различные типографические качества двух разных символов глифа

функции Freezable: A GlyphRunDrawing является типом объекта Freezable и поэтому можно заморозить для повышения производительности. Сведения о функциях Freezable, таких как замораживание и клонирование, см. в обзореобъектов Freezable.

внимание:GlyphRunDrawing объекты не поддерживают частичное выполнение доверия. Приложение должно иметь полные разрешения доверия для использования GlyphRunDrawing объектов.

Конструкторы

GlyphRunDrawing()

Инициализирует новый экземпляр класса GlyphRunDrawing.

GlyphRunDrawing(Brush, GlyphRun)

Инициализирует новый экземпляр класса GlyphRunDrawing путем указания кисти переднего плана и GlyphRun.

Поля

ForegroundBrushProperty

Определяет свойство зависимостей ForegroundBrush.

GlyphRunProperty

Определяет свойство зависимостей GlyphRun.

Свойства

Bounds

Возвращает границы, выровненные по оси содержимого документа.

(Унаследовано от Drawing)
CanFreeze

Возвращает значение, указывающее, можно ли изменить объект.

(Унаследовано от Freezable)
DependencyObjectType

Возвращает DependencyObjectType, который упаковывает тип СРЕДЫ CLR этого экземпляра.

(Унаследовано от DependencyObject)
Dispatcher

Возвращает Dispatcher, с которым связан этот DispatcherObject.

(Унаследовано от DispatcherObject)
ForegroundBrush

Возвращает или задает кисть переднего плана GlyphRunDrawing.

GlyphRun

Возвращает или задает GlyphRun, описывающий текст для рисования.

HasAnimatedProperties

Возвращает значение, указывающее, связан ли один или несколько объектов AnimationClock с любым из свойств зависимостей этого объекта.

(Унаследовано от Animatable)
IsFrozen

Возвращает значение, указывающее, является ли объект изменяемым в настоящее время.

(Унаследовано от Freezable)
IsSealed

Возвращает значение, указывающее, запечатан ли этот экземпляр (только для чтения).

(Унаследовано от DependencyObject)

Методы

ApplyAnimationClock(DependencyProperty, AnimationClock)

Применяет AnimationClock к указанному DependencyProperty. Если свойство уже анимировано, используется SnapshotAndReplace поведение передачи.

(Унаследовано от Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

Применяет AnimationClock к указанному DependencyProperty. Если свойство уже анимировано, используется указанный HandoffBehavior.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

Применяет анимацию к указанному DependencyProperty. Анимация запускается при отрисовки следующего кадра. Если указанное свойство уже анимировано, используется поведение SnapshotAndReplace передачи.

(Унаследовано от Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

Применяет анимацию к указанному DependencyProperty. Анимация запускается при отрисовки следующего кадра. Если указанное свойство уже анимировано, используется указанный HandoffBehavior.

(Унаследовано от Animatable)
CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.

(Унаследовано от DispatcherObject)
ClearValue(DependencyProperty)

Очищает локальное значение свойства. Свойство для очистки указывается идентификатором DependencyProperty.

(Унаследовано от DependencyObject)
ClearValue(DependencyPropertyKey)

Очищает локальное значение свойства только для чтения. Свойство для очистки указывается DependencyPropertyKey.

(Унаследовано от DependencyObject)
Clone()

Создает модификируемый клон этого GlyphRunDrawing, делая глубокие копии значений этого объекта. При копировании свойств зависимостей этот метод копирует ссылки на ресурсы и привязки данных (но они больше не могут разрешаться), но не анимации или их текущие значения.

CloneCore(Freezable)

Делает экземпляр клоном (глубокой копией) указанного Freezable с использованием базовых (не анимированных) значений свойств.

(Унаследовано от Freezable)
CloneCurrentValue()

Создает модификаторный клон этого объекта GlyphRunDrawing, делая глубокие копии текущих значений этого объекта. Ссылки на ресурсы, привязки данных и анимации не копируются, но их текущие значения.

CloneCurrentValueCore(Freezable)

Делает экземпляр модификируемым клоном (глубокой копией) указанного Freezable с использованием текущих значений свойств.

(Унаследовано от Freezable)
CoerceValue(DependencyProperty)

Принуждает значение указанного свойства зависимостей. Это достигается путем вызова любой функции CoerceValueCallback, указанной в метаданных свойства для свойства зависимостей, так как он существует в вызывающей DependencyObject.

(Унаследовано от DependencyObject)
CreateInstance()

Инициализирует новый экземпляр класса Freezable.

(Унаследовано от Freezable)
CreateInstanceCore()

При реализации в производном классе создает новый экземпляр производного класса Freezable.

(Унаследовано от Freezable)
Equals(Object)

Определяет, эквивалентен ли предоставленный DependencyObject текущему DependencyObject.

(Унаследовано от DependencyObject)
Freeze()

Делает текущий объект неизменяемым и задает для свойства IsFrozen значение true.

(Унаследовано от Freezable)
FreezeCore(Boolean)

Делает этот объект Animatable неизменимым или определяет, может ли он быть изменен.

(Унаследовано от Animatable)
GetAnimationBaseValue(DependencyProperty)

Возвращает неанимированное значение указанного DependencyProperty.

(Унаследовано от Animatable)
GetAsFrozen()

Создает замороженную копию Freezable, используя базовые (не анимированные) значения свойств. Так как копия заморожена, все замороженные вложенные объекты копируются по ссылке.

(Унаследовано от Freezable)
GetAsFrozenCore(Freezable)

Делает экземпляр замороженным клоном указанного Freezable с использованием базовых (не анимированных) значений свойств.

(Унаследовано от Freezable)
GetCurrentValueAsFrozen()

Создает замороженную копию Freezable с использованием текущих значений свойств. Так как копия заморожена, все замороженные вложенные объекты копируются по ссылке.

(Унаследовано от Freezable)
GetCurrentValueAsFrozenCore(Freezable)

Делает текущий экземпляр замороженным клоном указанного Freezable. Если объект имеет анимированные свойства зависимостей, их текущие анимированные значения копируются.

(Унаследовано от Freezable)
GetHashCode()

Возвращает хэш-код для этого DependencyObject.

(Унаследовано от DependencyObject)
GetLocalValueEnumerator()

Создает специализированный перечислитель для определения того, какие свойства зависимостей имеют локальные значения для этого DependencyObject.

(Унаследовано от DependencyObject)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
GetValue(DependencyProperty)

Возвращает текущее эффективное значение свойства зависимостей для этого экземпляра DependencyObject.

(Унаследовано от DependencyObject)
InvalidateProperty(DependencyProperty)

Повторно вычисляет эффективное значение для указанного свойства зависимостей.

(Унаследовано от DependencyObject)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
OnChanged()

Вызывается при изменении текущего объекта Freezable.

(Унаследовано от Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

Убедитесь, что для элемента данных DependencyObjectType только что заданы соответствующие указатели контекста.

(Унаследовано от Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

Этот член поддерживает инфраструктуру Windows Presentation Foundation (WPF) и не предназначен для использования непосредственно из кода.

(Унаследовано от Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

Переопределяет реализацию DependencyObjectOnPropertyChanged(DependencyPropertyChangedEventArgs) для вызова всех обработчиков Changed в ответ на изменение свойства зависимостей типа Freezable.

(Унаследовано от Freezable)
ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если оно существует.

(Унаследовано от DependencyObject)
ReadPreamble()

Гарантирует, что доступ к Freezable осуществляется из допустимого потока. Наследующие Freezable должны вызывать этот метод в начале любого API, который считывает элементы данных, которые не являются свойствами зависимостей.

(Унаследовано от Freezable)
SetCurrentValue(DependencyProperty, Object)

Задает значение свойства зависимостей, не изменяя его источник значений.

(Унаследовано от DependencyObject)
SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей, указанное его идентификатором свойства зависимостей.

(Унаследовано от DependencyObject)
SetValue(DependencyPropertyKey, Object)

Задает локальное значение свойства зависимостей только для чтения, указанное идентификатором DependencyPropertyKey свойства зависимостей.

(Унаследовано от DependencyObject)
ShouldSerializeProperty(DependencyProperty)

Возвращает значение, указывающее, должны ли процессы сериализации сериализовать значение для указанного свойства зависимостей.

(Унаследовано от DependencyObject)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
VerifyAccess()

Принудительно применяет доступ к этому DispatcherObjectвызываемого потока.

(Унаследовано от DispatcherObject)
WritePostscript()

Вызывает событие Changed для Freezable и вызывает его метод OnChanged(). Классы, производные от Freezable, должны вызывать этот метод в конце любого API, который изменяет элементы класса, которые не хранятся в качестве свойств зависимостей.

(Унаследовано от Freezable)
WritePreamble()

Проверяет, что Freezable не заморожен и к которому осуществляется доступ из допустимого контекста потоков. Freezable наследующие должны вызывать этот метод в начале любого API, записывающего элементы данных, которые не являются свойствами зависимостей.

(Унаследовано от Freezable)

События

Changed

Происходит при изменении Freezable или объекта, содержащего его.

(Унаследовано от Freezable)

Применяется к