Aspose.PSD cho Python via .NET 24.6 - Ghi chú Phát hành
Khóa | Tóm tắt | Loại |
---|---|---|
PSDPYTHON-69 | Thực hiện hỗ trợ lớp bản đồ Gradient | Tính năng |
PSDPYTHON-70 | [Định dạng AI] Thêm hỗ trợ Metadata XPacket vào Định dạng AI (Hiện tại không có sẵn cho phiên bản Python) | Tính năng |
PSDPYTHON-71 | Thực hiện loại Inflate, Squeeze và Twist của warp | Tính năng |
PSDPYTHON-72 | Chế độ Rgb và Lab không thể chứa ít hơn 3 kênh và nhiều hơn 4 kênh trong tệp với Lớp ArtBoard | Lỗi |
PSDPYTHON-79 | Khu vực xử lý phía trên phải là dương. (Tham số ‘areaToProcess’) khi xử lý tệp cụ thể | Lỗi |
PSDPYTHON-74 | Mở rộng hình ảnh trên canvas bị cắt bớt sau khi lưu. Dữ liệu bị mất nhưng Xem trước trông đúng | Lỗi |
Thay đổi API công cộng
Các API được thêm vào:
- P:Aspose.PSD.FileFormats.Psd.Layers.FillSettings.NoiseGradientFillSettings.ExpansionCount
- M:Aspose.PSD.FileFormats.Psd.PsdImage.AddGradientMapAdjustmentLayer
- T:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.GradientMapLayer
- P:Aspose.PSD.FileFormats.Psd.Layers.AdjustmentLayers.GradientMapLayer.GradientSettings
- P:Aspose.PSD.FileFormats.Ai.AiImage.XmpData
Các API được gỡ bỏ:
- Không có
Ví dụ về việc sử dụng:
PSDPYTHON-69. Thực hiện hỗ trợ lớp bản đồ Gradient
sourceFile = "gradient_map_src.psd"
outputFile = "gradient_map_src_output.psd"
def AssertAreEqual(expected, actual, message=None):
if expected != actual:
raise Exception(message or "Các đối tượng không bằng nhau.")
with PsdImage.load(sourceFile) as image:
im = cast(PsdImage, image)
layer = im.add_gradient_map_adjustment_layer()
layer.gradient_settings.reverse = True
im.save(outputFile)
with PsdImage.load(outputFile) as image:
im = cast(PsdImage, image)
gradient_map_layer = cast(GradientMapLayer, im.layers[1])
gradient_settings = cast(GradientFillSettings, gradient_map_layer.gradient_settings)
AssertAreEqual(0.0, gradient_settings.angle)
AssertAreEqual(4096, gradient_settings.interpolation)
AssertAreEqual(True, gradient_settings.reverse)
AssertAreEqual(False, gradient_settings.align_with_layer)
AssertAreEqual(False, gradient_settings.dither)
AssertAreEqual(GradientType.LINEAR, gradient_settings.gradient_type)
AssertAreEqual(100, gradient_settings.scale)
AssertAreEqual(0.0, gradient_settings.horizontal_offset)
AssertAreEqual(0.0, gradient_settings.vertical_offset)
AssertAreEqual("Tùy chỉnh", gradient_settings.gradient_name)
PSDPYTHON-70. [Định dạng AI] Thêm hỗ trợ Metadata XPacket vào Định dạng AI (Hiện tại không có sẵn cho phiên bản Python)
# Hiện tại API này không có sẵn cho Aspose.PSD cho Python
# sourceFile = "ai_one.ai"
#
# def AssertAreEqual(expected, actual):
# if expected != actual:
# raise Exception("Các đối tượng không bằng nhau.")
#
# def AssertIsNotNull(test_object):
# if test_object is None:
# raise Exception("Đối tượng kiểm tra là null.")
#
# creator_tool_key = ":CreatorTool"
# n_pages_key = "xmpTPg:NPages"
# unit_key = "stDim:unit"
# height_key = "stDim:h"
# width_key = "stDim:w"
#
# expected_creator_tool = "Adobe Illustrator CC 22.1 (Windows)"
# expected_n_pages = "1"
# expected_unit = "Điểm ảnh"
# expected_height = 768
# expected_width = 1366
#
# with AiImage.load(sourceFile) as img:
# image = cast(AiImage, img)
#
# xmp_metadata = image.xmp_data
# # XmpPacketWrapper a
# AssertIsNotNull(xmp_metadata)
#
# basic_package = cast(XmpBasicPackage, xmp_metadata.get_package(Namespaces.XMP_BASIC))
# package = xmp_metadata.packages[4]
#
# creator_tool = basic_package.g[creator_tool_key].to_string()
# n_pages = package[n_pages_key]
# unit = package[unit_key]
# height = np.double.parse(package[height_key].to_string())
# width = np.double.parse(package[width_key].to_string())
#
# AssertAreEqual(creator_tool, expected_creator_tool)
# AssertAreEqual(n_pages, expected_n_pages)
# AssertAreEqual(unit, expected_unit)
# AssertAreEqual(height, expected_height)
# AssertAreEqual(width, expected_width)
PSDPYTHON-71. Thực hiện loại Inflate, Squeeze và Twist của warp
files = ["Twist", "Squeeze", "Squeeze_vert", "Inflate"]
for prefix in files:
sourceFile = prefix + ".psd"
outputFile = prefix + "_export.png"
loadOpt = PsdLoadOptions()
loadOpt.allow_warp_repaint = True
loadOpt.load_effects_resource = True
pngOpt = PngOptions()
pngOpt.color_type = PngColorType.TRUECOLOR_WITH_ALPHA
with PsdImage.load(sourceFile, loadOpt) as psdImage:
psdImage.save(outputFile, pngOpt)
PSDPYTHON-72. Chế độ Rgb và Lab không thể chứa ít hơn 3 kênh và nhiều hơn 4 kênh trong tệp với Lớp ArtBoard
sourceFile = "Rgb5Channels.psb"
outputFile = "Rgb5Channels_output.psd"
with PsdImage.load(sourceFile) as image:
image.save(outputFile)
PSDPYTHON-79. Khu vực xử lý phía trên phải là dương. (Tham số ‘areaToProcess’) khi xử lý tệp cụ thể
sourceFile = "BANNERS_2_Intel-Gamer_psak.psd")
outputFile = "BANNERS_2_Intel-Gamer_psak_out.psd"
psdLoadOptions = PsdLoadOptions()
psdLoadOptions.load_effects_resource = True
psdLoadOptions.allow_warp_repaint = True
with PsdImage.load(sourceFile, psdLoadOptions) as image:
image.save(outputFile)
PSDPYTHON-74. Mở rộng hình ảnh trên canvas bị cắt bớt sau khi lưu. Dữ liệu bị mất nhưng Xem trước trông đúng
sourceFile = "bigfile.psd"
outputFile = "bigfile_output.psd"
outputPicture = "bigfile.png"
loadOptions = PsdLoadOptions()
loadOptions.load_effects_resource = True
loadOptions.use_disk_for_load_effects_resource = True
with PsdImage.load(sourceFile, loadOptions) as image:
psdImage = cast(PsdImage, image)
psdOpt = PsdOptions()
psdOpt.compression_method = CompressionMethod.RLE
psdImage.save(outputFile, psdOpt)