Aspose.PSD for .NET 22.8 - 릴리스 노트
Contents
[
Hide
]
이 페이지에는 Aspose.PSD for .NET 22.8의 릴리스 노트가 포함되어 있습니다.
Key | Summary | Category |
---|---|---|
PSDNET-1225 | 설치 프로그램의 문제 조사 및 수정 | 증대 |
PSDNET-800 | PSD 파일로부터 Frame TimeLine 지원 | 특징 |
PSDNET-1219 | ShmdResource의 서브 리소스로 포함된 ‘mlst’ 리소스 지원 | 특징 |
PSDNET-814 | 레이어의 레이어 변환 이후 하더의 해시가 변경됨 | 버그 |
공개 API 변경
추가된 API:
- T:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame
- M:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame.#ctor(Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine)
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame.Id
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame.Delay
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame.LayerStates
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.Frame.DisposalMethod
- T:Aspose.PSD.FileFormats.Psd.Layers.Animation.FrameDisposalMethod
- F:Aspose.PSD.FileFormats.Psd.Layers.Animation.FrameDisposalMethod.Automatic
- F:Aspose.PSD.FileFormats.Psd.Layers.Animation.FrameDisposalMethod.DoNotDispose
- F:Aspose.PSD.FileFormats.Psd.Layers.Animation.FrameDisposalMethod.Dispose
- T:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState
- M:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.#ctor(System.Int32)
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.Id
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.Enabled
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.Offset
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.BlendMode
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.HorizontalFXRf
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.VerticalFXRf
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.Opacity
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.LayerState.FillOpacity
- T:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine
- M:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.#ctor
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.AFSt
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.FsID
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.ActiveFrame
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.LoopesCount
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.Frames
- P:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.LayerIds
- M:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.InitializeFrom(Aspose.PSD.FileFormats.Psd.PsdImage)
- M:Aspose.PSD.FileFormats.Psd.Layers.Animation.TimeLine.ApplyTo(Aspose.PSD.FileFormats.Psd.PsdImage)
- T:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.#ctor
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.Signature
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.Key
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.PsdVersion
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.DescriptorVersion
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.Items
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.Length
- M:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.Save(Aspose.PSD.StreamContainer,System.Int32)
- F:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.MlstResource.TypeToolKey
- P:Aspose.PSD.FileFormats.Psd.Layers.LayerResources.ShmdResource.SubResourcesx
제거된 API:
- 없음
사용 예제:
PSDNET-800. PSD 파일로부터 Frame TimeLine 지원
string sourceFile = "image1219.psd";
string outputPsd = "output_image800.psd";
using (PsdImage psdImage = (PsdImage)Image.Load(sourceFile))
{
TimeLine timeLine = TimeLine.InitializeFrom(psdImage);
// 프레임 1의 Dispose 메소드 변경
timeLine.Frames[0].DisposalMethod = FrameDisposalMethod.DoNotDispose;
// 프레임 2의 지연 변경
timeLine.Frames[1].Delay = 15;
// 프레임 2에서 'Layer 1'의 투명도 변경
LayerState layerState11 = timeLine.Frames[1].LayerStates[timeLine.LayerIds[1]];
layerState11.Opacity = 50;
// 프레임 3에서 'Layer 1'을 좌측 하단 모서리로 이동
LayerState layerState21 = timeLine.Frames[2].LayerStates[timeLine.LayerIds[1]];
layerState21.Offset = 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);
}
PSDNET-814. 레이어의 레이어 변환 이후 하더의 해시가 변경됨
string sourceFile = "AllTypesLayerPsd.psd";
using (var image = (PsdImage)Image.Load(sourceFile))
{
var layer = image.Layers[0];
var startHash = layer.GetHashCode();
var effects = layer.BlendingOptions.Effects;
var endHash = layer.GetHashCode();
if (startHash != endHash)
{
throw new Exception("해시가 변경되어서는 안 됩니다");
}
}
PSDNET-1219. ShmdResource의 서브 리소스로 포함된 ‘mlst’ 리소스 지원
string sourceFile = "image1219.psd";
string outputPsd = "output_image1219.psd";
using (PsdImage image = (PsdImage)Image.Load(sourceFile))
{
Layer layer1 = image.Layers[1];
ShmdResource shmdResource = (ShmdResource)layer1.Resources[8];
MlstResource mlstResource = (MlstResource)shmdResource.SubResources[0];
ListStructure layerStatesList = (ListStructure)mlstResource.Items[1];
DescriptorStructure layersStateOnFrame1 = (DescriptorStructure)layerStatesList.Types[1];
BooleanStructure layerEnabled = (BooleanStructure)layersStateOnFrame1.Structures[0];
// 프레임 1에서 레이어 1 비활성화
layerEnabled.Value = false;
image.Save(outputPsd);
}