Class TimeLine

TimeLine class

Модель опций временной шкалы.

public sealed class TimeLine

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

ИмяОписание
TimeLine()Конструктор по умолчанию.

Характеристики

ИмяОписание
ActiveFrame { get; set; }Получает или задает индекс активного кадра.
AFSt { get; set; }Получает или задает значение AFSt.
Frames { get; set; }Получает список кадров.
FsID { get; set; }Получает или задает значение FsID.
LayerIds { get; set; }Получает или задает массив идентификаторов слоев.
LoopesCount { get; set; }Получает или задает количество циклов.

Методы

ИмяОписание
static InitializeFrom(PsdImage)Создает новый экземплярTimeLine , инициализируется из вводаPsdImage .
ApplyTo(PsdImage)Применить текущие значения временной шкалы к входным даннымPsdImage .

Примеры

Класс TimeLine дает высокоуровневую возможность манипулировать временной шкалой PsdImage, например, изменять задержку кадра или редактировать состояние слоя в конкретном кадре.

[C#]

string sourceFile = "image1219.psd";
string outputPsd = "output_image800.psd";

using (PsdImage psdImage = (PsdImage)Image.Load(sourceFile))
{
    TimeLine timeLine = TimeLine.InitializeFrom(psdImage);

    // Изменяем метод удаления кадра 1
    timeLine.Frames[0].DisposalMethod = FrameDisposalMethod.DoNotDispose;

    // Изменить задержку кадра 2
    timeLine.Frames[1].Delay = 15;

    // Изменяем непрозрачность «Слоя 1» на кадре 2
    LayerState layerState11 = timeLine.Frames[1].LayerStates[timeLine.LayerIds[1]];
    layerState11.Opacity = 50;

    // перемещаем 'Слой 1' в левый нижний угол кадра 3
    LayerState layerState21 = timeLine.Frames[2].LayerStates[timeLine.LayerIds[1]];
    layerState21.PositionOffset = new Point(-50, 230);

    // Добавляет новый кадр
    List<Frame> frames = new List<Frame>(timeLine.Frames);
    frames.Add(new Frame(timeLine));
    timeLine.Frames = frames.ToArray();

    // Изменяем режим смешивания «Слой 1» на кадре 4
    LayerState layerState31 = timeLine.Frames[3].LayerStates[timeLine.LayerIds[1]];
    layerState31.BlendMode = BlendMode.Dissolve;

    // Применить изменения к экземпляру PsdImage
    timeLine.ApplyTo(psdImage);
    psdImage.Save(outputPsd);
}

Смотрите также