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; }获取或设置图层id数组。
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);

    // 改变 frame 1 的 dispose 方法
    timeLine.Frames[0].DisposalMethod = FrameDisposalMethod.DoNotDispose;

    // 改变第 2 帧的延迟
    timeLine.Frames[1].Delay = 15;

    // 改变第 2 帧“第 1 层”的不透明度
    LayerState layerState11 = timeLine.Frames[1].LayerStates[timeLine.LayerIds[1]];
    layerState11.Opacity = 50;

    // 将“Layer 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();

    // 在第 4 帧上更改“Layer 1”的混合模式
    LayerState layerState31 = timeLine.Frames[3].LayerStates[timeLine.LayerIds[1]];
    layerState31.BlendMode = BlendMode.Dissolve;

    // 将更改应用回 PsdImage 实例
    timeLine.ApplyTo(psdImage);
    psdImage.Save(outputPsd);
}

也可以看看