Пример за използване на групови слоеве в Aspose.PSD за Python

Преглед

Работата с групови слоеве в Aspose.PSD за Python е мощна функционалност, която ви позволява да организирате и манипулирате слоевете във PSD изображение. Груповите слоеве, също познати като слоеве-папки, предоставят начин за групиране на множество слоеве и прилагане на трансформации или ефекти върху цялата група.

В този пример първоначално създаваме ново PSD изображение, използвайки метода PsdImage.create. След това създаваме нов обект LayerGroup, като използваме метода add_layer_group на обекта PsdImage. Предоставяме името на груповия слой (“Folder”), индекса, на който трябва да бъде вмъкнат (0) и флаг за видимост, указващ дали груповият слой трябва да бъде видим (True).

След това създаваме два обекта Layer и задаваме техните имена за показване, използвайки свойството display_name. Добавяме тези слоеве към груповия слой, използвайки метода add_layer.

И накрая, можем да получим достъп до слоевете в групата, използвайки свойството layers на обекта LayerGroup. В примера утвърждаваме, че имената за показване на първия и втория слой в групата са “Layer 1” и “Layer 2” съответно.

След манипулирането на груповите слоеве, можем да запазим модифицираното PSD изображение, използвайки метода save на обекта PsdImage.

Това е прост пример, който ви помага да започнете работа с групови слоеве, използвайки Aspose.PSD за Python. Библиотеката предоставя още много напреднали функции за манипулиране и преобразуване на слоевете във PSD изображения. Можете да се обърнете към документацията на Aspose.PSD за Python за повече подробности и примери за работа с груповите слоеве и другите функции на библиотеката.

За работа с групови слоеве в Aspose.PSD за Python можете да използвате класа LayerGroup. Ето примерен откъс от код, който демонстрира как да създадете групов слой, да добавите слоеве към него и да запазите модифицираното PSD изображение.

Моля, проверете пълния пример.

Пример

from io import BytesIO
from aspose.psd.fileformats.psd import PsdImage
from aspose.psd.fileformats.psd.layers import Layer
from aspose.psd.imageoptions import PsdOptions
from aspose.psd.sources import StreamSource
from aspose.pycore import cast
def LayerGroupManipulationTest():
outputPsd = "LayerGroup.psd"
psd_options = PsdOptions()
stream = BytesIO()
psd_options.source = StreamSource(stream)
with PsdImage.create(psd_options, 100, 100) as image:
psd_image = cast(PsdImage, image)
layer_group = psd_image.add_layer_group("Folder", 0, True)
layer1 = Layer()
layer1.display_name = "Layer 1"
layer2 = Layer()
layer2.display_name = "Layer 2"
layer_group.add_layer(layer1)
layer_group.add_layer(layer2)
assert layer_group.layers[0].display_name == "Layer 1"
assert layer_group.layers[1].display_name == "Layer 2"
psd_image.save(outputPsd)