PsdImage і
Layer, даючи Python розробникам програмний доступ до структури PSD-документа без
нативних залежностей для компіляції. Бібліотека читає розміри, колірний режим, бітову глибину і метод
компресії файлу PSD/PSB і відкриває кожен шар через PsdImage.layers: кожен Layer повідомляє його назву,
границі, непрозорість, видимість і ключ режиму змішування (BlendMode), а також інформацію нижчого рівня
про канали (ChannelInformation) і дані маски (LayerMaskData). Підмножина
метаданих шару — назва, границі (left/top/right/bottom) і режим змішування — може бути
змінена на місці та збережена назад на диск за допомогою PsdImage.save(); все інше
за замовчуванням лише для читання у цьому FOSS-збірці. Aspose.PSD FOSS for Python має ліцензію MIT. Встановіть її за допомогою
pip install aspose-psd-foss — бібліотека не має сторонніх нативних
залежностей, лише стандартна бібліотека Python. Для корпоративного сімейства продуктів перегляньте Aspose.PSD — Enterprise Product Family.Image.load(file_path) відкриває файл і повертає екземпляр PsdImagePsdImage.width, height і channels_count повідомляють розміри полотна та кількість каналівPsdImage.layers повертає повний список об’єктів Layer у порядку документаPsdImage.layers повертає кожен Layer у порядку документа; кожен Layer надає name, bounds, opacity, is_visible та blend_mode_keyLayer.channel_information надає метадані каналів для глибшого аналізуLayer.channels_count повідомляє, скільки каналів зображення несе шарPsdImage.layers можна переназначити, щоб видалити або змінити порядок шарівLayer.name, Layer.left/top/right/bottom та Layer.blend_mode_key можна встановлювати безпосередньоPsdImage.save(file_path) зберігає змінений документ назад на дискPsdImage.load підтверджує, що правки успішно проходять круговий шляхNotSupportedException, якщо їх встановлювати — ця збірка підтримує лише редагування метаданих, а не повне переписуванняLayer.channel_information надає колекції метаданих для кожного каналуLayer.has_mask_data і has_blending_ranges_data повідомляють, чи присутні необов’язкові розділиPsdLoadException та PsdSaveException виводять помилки завантаження/збереження з чіткими повідомленнямиЗавантажте файл за допомогою Image.load, щоб отримати екземпляр PsdImage для PSD-специфічних членів.
from aspose_psd_foss.image import Image
with Image.load("test.psd") as image:
print(f"Width: {image.width}, Channels: {image.channels_count}, Layers: {len(image.layers)}")
Межі шару та режим змішування можна змінювати на місці та зберігати назад на диск.
from aspose_psd_foss.psdimage import PsdImage
from aspose_psd_foss.layers.blendmode import BlendMode
with PsdImage.load("test.psd") as image:
image.layers[0].left = 10
image.layers[0].top = 20
image.layers[0].right = 40
image.layers[0].bottom = 60
image.layers[0].blend_mode_key = BlendMode.MULTIPLY
image.save("edited.psd")
with PsdImage.load("edited.psd") as reloaded:
print(f"Bounds: {reloaded.layers[0].bounds}, BlendMode: {reloaded.layers[0].blend_mode_key}")
Інформація про канали може бути прочитана, але не може бути переназначена — спроба встановити її викликає NotSupportedException.
from aspose_psd_foss.psdimage import PsdImage
with PsdImage.load("test.psd") as image:
layer = image.layers[0]
channel_information = layer.channel_information
print(f"Channel count: {layer.channels_count}, first channel: `NotSupportedException`")
# layer.channel_information = channel_information # raises NotSupportedException
Aspose.PSD FOSS for Python має ліцензію MIT. Ви можете використовувати, змінювати та розповсюджувати його за умовами ліцензії MIT, включаючи комерційні продукти.
Перегляньте розділ встановлення вище, щоб дізнатися поточну команду встановлення.
Він завантажує та зберігає файли PSD і PSB (великий документ Photoshop). Він не виконує рендеринг і не експортує піксельні дані в інші растрові формати, такі як PNG або JPEG.
PsdImage (підклас Image). Завантажте документ за допомогою PsdImage.load, потім прочитайте його колекцію layers та властивості заголовка.
Так — Layer надає робочий сеттер для кількох властивостей, таких як видимість і назва, і PsdImage.layers сам має робочий сеттер для заміни колекції. Декілька конкретних властивостей (інформація про канал, дані маски, діапазони змішування та деякі ресурси рівня документа) лише для читання у цій FOSS збірці і піднімають NotSupportedException, якщо їх встановити.