Пример использования групповых слоев в Aspose.PSD для Python

Обзор

Работа с групповыми слоями в Aspose.PSD для Python - это мощная функция, которая позволяет организовывать и управлять слоями в изображении PSD. Групповые слои, также известные как слои папки (folder layers), позволяют группировать несколько слоев вместе и применять преобразования или эффекты ко всей группе.

В этом примере мы сначала создаем новое изображение 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)