Aspose.PSD for .NET 23.9 - 릴리스 노트
Contents
[
Hide
]
이 페이지에는 Aspose.PSD for .NET 23.9에 대한 릴리스 노트가 포함되어 있습니다.
키 | 요약 | 카테고리 |
---|---|---|
PSDNET-1638 | 새 조정 레이어에 대한 마스크 만들기 구현 | 기능 |
PSDNET-1654 | Blend Clipped 레이어를 그룹 블렌딩 옵션으로 추가 | 기능 |
PSDNET-1194 | 16비트 색상 모드 PSD 파일에서 조정 레이어에 마스크가 적용되지 않음 | 버그 |
PSDNET-1235 | 텍스트 레이어에서 괄호가 잘못된 렌더링 | 버그 |
PSDNET-1559 | 텍스트 레이어의 스타일 업데이트 불가능 | 버그 |
PSDNET-1583 | CMYK로 PSD 파일을 내보낸 후 내보낸 PSD에서 색상이 깨짐 | 버그 |
PSDNET-1619 | 특정 PSB 파일이 “사각형에 공통 처리 영역이 없음” 예외를 발생시킴 | 버그 |
PSDNET-1648 | 이미지 로딩 실패. OverflowException: 산술 연산이 오버플로우로 결과를 초래 | 버그 |
공개 API 변경
추가된 API:
- P:Aspose.PSD.FileFormats.Psd.Layers.Layer.BlendClippedElements
- T:Aspose.PSD.CustomFontHandler.CustomFontData
- M:Aspose.PSD.CustomFontHandler.CustomFontData.#ctor(System.String,System.Byte[])
- P:Aspose.PSD.CustomFontHandler.CustomFontData.FontName
- P:Aspose.PSD.CustomFontHandler.CustomFontData.FontData
- P:Aspose.PSD.FontSettings.GetSystemAlternativeFont
- P:Aspose.PSD.Graphics.PaintableImageOptions
- P:Aspose.PSD.Image.UsePalette
- M:Aspose.PSD.Region.Equals(System.Object)
- M:Aspose.PSD.Region.GetHashCode
- P:Aspose.PSD.StringFormat.CustomCharIdent
- M:Aspose.PSD.StringFormat.Equals(System.Object)
- M:Aspose.PSD.StringFormat.GetHashCode
- F:Aspose.PSD.StringFormatFlags.ExactAlignment
제거된 API:
- 없음
사용 예시:
PSDNET-1638. 새 조정 레이어에 대한 마스크 만들기 구현
string srcFile = "zendeya_BW.psd";
string dstFile = "zendeya_BW_out.psd";
using (var im = (PsdImage)Image.Load(srcFile))
{
im.AddBlackWhiteAdjustmentLayer();
im.Save(dstFile);
}
using (var im = (PsdImage)Image.Load(dstFile))
{
Layer layer = im.Layers[1];
AssertAreEqual((ushort)5, layer.ChannelsCount);
AssertAreEqual((short)-2, layer.ChannelInformation[4].ChannelID);
}
void AssertAreEqual(object expected, object actual, string message = null)
{
if (!object.Equals(expected, actual))
{
throw new Exception(message ?? "Objects are not equal.");
}
}
PSDNET-1654. Blend Clipped 레이어를 그룹 블렌딩 옵션으로 추가
string sourceFile = "example_source.psd";
string outputPsd = "example_output.psd";
string outputPng = "example_output.png";
using (var image = (PsdImage)Image.Load(sourceFile))
{
image.Layers[1].BlendClippedElements = false;
image.Save(outputPsd);
image.Save(outputPng, new PngOptions());
}
PSDNET-1194. 16비트 색상 모드 PSD 파일에서 조정 레이어에 마스크가 적용되지 않음
string sourceFile = "source.psd";
string outputPng = "current.png";
using (var image = (PsdImage)Image.Load(sourceFile))
{
image.Save(outputPng, new PngOptions());
}
PSDNET-1235. 텍스트 레이어에서 괄호가 잘못된 렌더링
string file = "file1.psd";
string output = "output_1235.png";
using (var psdImage = (PsdImage)Image.Load(file))
{
foreach (var layer in psdImage.Layers)
if (layer is TextLayer textLayer)
textLayer.TextData.UpdateLayerData();
var imageOptions = new PsdOptions(psdImage);
psdImage.Save(output, imageOptions);
}
PSDNET-1559. 텍스트 레이어의 스타일 업데이트 불가능
string sourceFile = "Example_FontSize.psd";
string outputFile = "output_Example_FontSize.psd";
using (var psdImage = (PsdImage)Image.Load(sourceFile, new PsdLoadOptions() { LoadEffectsResource = true }))
{
var l1 = (TextLayer)psdImage.Layers[4];
var l2 = (TextLayer)psdImage.Layers[5];
var textItems1 = l1.TextData.ProducePortions(new string[] { "text1", "text2" }, l1.TextData.Items[0].Style, l1.TextData.Items[0].Paragraph);
l1.TextData.RemovePortion(0);
foreach (var item in textItems1)
{
l1.TextData.AddPortion(item);
}
var textItems2 = l2.TextData.ProducePortions(new string[] { "text layer 1", "text layer 22" }, l2.TextData.Items[0].Style, l2.TextData.Items[0].Paragraph);
foreach (var item in textItems2)
{
l2.TextData.AddPortion(item);
}
l1.TextData.UpdateLayerData();
l2.TextData.UpdateLayerData();
psdImage.Save(outputFile);
}
PSDNET-1583. CMYK로 PSD 파일을 내보내고 내보낸 PSD에서 색상이 깨짐
string sourceFile = "canyon.psd";
string outputFilePng = "output_canyon.png";
using (var outputStream = new MemoryStream())
{
using (var psdImage = (PsdImage)Image.Load(sourceFile))
{
psdImage.Save(outputStream);
}
outputStream.Position = 0;
using (var psdImage = (PsdImage)Image.Load(outputStream))
{
psdImage.Save(outputFilePng, new PngOptions());
}
}
PSDNET-1619. 특정 PSB 파일이 “사각형에 공통 처리 영역이 없음” 예외를 발생시킴
var input = "1619_src.psb";
var output = "1619_output.png";
using (PsdImage img = (PsdImage)Image.Load(input, new PsdLoadOptions() { LoadEffectsResource = true }))
{
img.Save(output,
new PngOptions() { CompressionLevel = 9, ColorType = PngColorType.TruecolorWithAlpha });
}
PSDNET-1648. 이미지 로딩 실패. OverflowException: 산술 연산이 오버플로우로 결과를 초래
string sourceFile = "9baa6962-f409-41ee-88da-418ea87bb56f_test_2.psd";
using (PsdImage im = (PsdImage)PsdImage.Load(sourceFile))
{
Layer layer = im.Layers[28];
GrdmResource grdmResource = (GrdmResource)layer.Resources[0];
AssertAreEqual("自定", grdmResource.GradientName);
}
void AssertAreEqual(object expected, object actual, string message = null)
{
if (!object.Equals(expected, actual))
{
throw new Exception(message ?? "Objects are not equal.");
}
}