Управление чернилами
PowerPoint предоставляет функцию чернил, которая позволяет вам рисовать нестандартные фигуры, которые можно использовать для выделения других объектов, показа связей и процессов, а также для привлечения внимания к определённым элементам на слайде.
Aspose.Slides предоставляет интерфейс Aspose.Slides.Ink, который содержит необходимые типы для создания и управления объектами чернил.
Различия между обычными объектами и объектами чернил
Объекты на слайде PowerPoint обычно представлены объектами формы. Объект формы, в его самом простом виде, является контейнером, который определяет площадь самого объекта (его рамка) вместе с его свойствами. К последним относятся размер контейнера, форма контейнера, фон контейнера и т.д. Для получения информации смотрите Формат расположения формы.
Однако, когда PowerPoint имеет дело с объектом чернил, он игнорирует все свойства рамки объекта (контейнера), кроме его размера. Размер области контейнера определяется стандартными значениями width
и height
:
Следы чернил
След является базовым элементом или стандартом, используемым для записи траектории пера, когда пользователь пишет цифровые чернила. Следы — это записи, которые описывают последовательности соединенных точек.
Самая простая форма кодирования указывает координаты X и Y каждой опорной точки. Когда все соединенные точки отрисовываются, они создают изображение, подобное этому:
Свойства кисти для рисования
Вы можете использовать кисть для рисования линий, соединяющих точки элементов следа. Кисть имеет свой собственный цвет и размер, соответствующие свойствам Brush.Color
и Brush.Size
.
Установить цвет кисти для чернил
Вот как выглядит код на C# для установки цвета кисти:
using (Presentation pres = new Presentation("pres.pptx"))
{
IInk ink = (IInk)pres.Slides[0].Shapes[0];
IInkTrace[] traces = ink.Traces;
IInkBrush brush = traces[0].Brush;
Color brushColor = brush.Color;
brush.Color = Color.Red;
}
Установить размер кисти для чернил
Вот как выглядит код на C# для установки размера кисти:
using (Presentation pres = new Presentation("pres.pptx"))
{
IInk ink = (IInk)pres.Slides[0].Shapes[0];
IInkTrace[] traces = ink.Traces;
IInkBrush brush = traces[0].Brush;
SizeF brushSize = brush.Size;
brush.Size = new SizeF(5f, 10f);
}
В общем, ширина и высота кисти не совпадают, поэтому PowerPoint не отображает размер кисти (раздел данных затенен). Но когда ширина и высота кисти совпадают, PowerPoint отображает её размер следующим образом:
Для ясности давайте увеличим высоту объекта чернил и рассмотрим важные размеры:
Контейнер (рамка) не учитывает размер кистей — он всегда предполагает, что толщина линии равна нулю (см. последнее изображение).
Следовательно, чтобы определить видимую область всего объекта чернил, мы должны учитывать размер кисти объектов следа. Здесь целевой объект (объект следа рукописного текста) был масштабирован до размера контейнера (рамки). Когда размер контейнера (рамки) изменяется, размер кисти остается постоянным и наоборот.
PowerPoint демонстрирует то же самое поведение при работе с текстами:
Дальнейшее чтение
- Чтобы прочитать о формах в общем, смотрите раздел Формы PowerPoint.
- Для получения дополнительной информации об эффективных значениях смотрите Эффективные свойства формы.