Skip to main content

Python package for working with Adobe Photoshop PSD files

Project description

psd-tools is a Python package for working with Adobe Photoshop PSD files as described in specification.

PyPI Version Build Document Status

Features

Supported:

  • Read and write of the low-level PSD/PSB file structure

  • Raw layer image export in NumPy and PIL format

Limited support:

  • Composition of basic pixel-based layers

  • Composition of fill layer effects

  • Vector masks

  • Editing of some layer attributes such as layer name

  • Basic editing of pixel layers and groups, such as adding or removing a layer

  • Blending modes except for dissolve

  • Drawing of bezier curves

Not supported:

  • Editing of various layers such as type layers, shape layers, smart objects, etc.

  • Composition of adjustment layers

  • Composition of many layer effects

  • Font rendering

Installation

Use pip to install the package:

pip install psd-tools

Getting started

from psd_tools import PSDImage

psd = PSDImage.open('example.psd')
psd.composite().save('example.png')

for layer in psd:
    print(layer)
    layer_image = layer.composite()
    layer_image.save('%s.png' % layer.name)

Check out the documentation for features and details.

Contributing

See contributing page.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

psd_tools-1.10.2.tar.gz (237.0 kB view hashes)

Uploaded Source

Built Distributions

psd_tools-1.10.2-cp313-cp313-win_amd64.whl (326.7 kB view hashes)

Uploaded CPython 3.13 Windows x86-64

psd_tools-1.10.2-cp313-cp313-win32.whl (315.3 kB view hashes)

Uploaded CPython 3.13 Windows x86

psd_tools-1.10.2-cp313-cp313-musllinux_1_2_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.13 musllinux: musl 1.2+ x86-64

psd_tools-1.10.2-cp313-cp313-musllinux_1_2_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.13 musllinux: musl 1.2+ i686

psd_tools-1.10.2-cp313-cp313-musllinux_1_2_aarch64.whl (1.7 MB view hashes)

Uploaded CPython 3.13 musllinux: musl 1.2+ ARM64

psd_tools-1.10.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (706.0 kB view hashes)

Uploaded CPython 3.13 manylinux: glibc 2.17+ x86-64

psd_tools-1.10.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (698.9 kB view hashes)

Uploaded CPython 3.13 manylinux: glibc 2.17+ ARM64

psd_tools-1.10.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (687.5 kB view hashes)

Uploaded CPython 3.13 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

psd_tools-1.10.2-cp313-cp313-macosx_10_13_universal2.whl (398.4 kB view hashes)

Uploaded CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)

psd_tools-1.10.2-cp312-cp312-win_amd64.whl (326.9 kB view hashes)

Uploaded CPython 3.12 Windows x86-64

psd_tools-1.10.2-cp312-cp312-win32.whl (315.4 kB view hashes)

Uploaded CPython 3.12 Windows x86

psd_tools-1.10.2-cp312-cp312-musllinux_1_2_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ x86-64

psd_tools-1.10.2-cp312-cp312-musllinux_1_2_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ i686

psd_tools-1.10.2-cp312-cp312-musllinux_1_2_aarch64.whl (1.7 MB view hashes)

Uploaded CPython 3.12 musllinux: musl 1.2+ ARM64

psd_tools-1.10.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (709.5 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

psd_tools-1.10.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (702.0 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

psd_tools-1.10.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (689.6 kB view hashes)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

psd_tools-1.10.2-cp312-cp312-macosx_10_13_universal2.whl (400.5 kB view hashes)

Uploaded CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)

psd_tools-1.10.2-cp311-cp311-win_amd64.whl (326.0 kB view hashes)

Uploaded CPython 3.11 Windows x86-64

psd_tools-1.10.2-cp311-cp311-win32.whl (314.8 kB view hashes)

Uploaded CPython 3.11 Windows x86

psd_tools-1.10.2-cp311-cp311-musllinux_1_2_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ x86-64

psd_tools-1.10.2-cp311-cp311-musllinux_1_2_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ i686

psd_tools-1.10.2-cp311-cp311-musllinux_1_2_aarch64.whl (1.7 MB view hashes)

Uploaded CPython 3.11 musllinux: musl 1.2+ ARM64

psd_tools-1.10.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (721.0 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

psd_tools-1.10.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (714.7 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

psd_tools-1.10.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (704.6 kB view hashes)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

psd_tools-1.10.2-cp311-cp311-macosx_10_9_universal2.whl (397.6 kB view hashes)

Uploaded CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)

psd_tools-1.10.2-cp310-cp310-win_amd64.whl (326.0 kB view hashes)

Uploaded CPython 3.10 Windows x86-64

psd_tools-1.10.2-cp310-cp310-win32.whl (315.0 kB view hashes)

Uploaded CPython 3.10 Windows x86

psd_tools-1.10.2-cp310-cp310-musllinux_1_2_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ x86-64

psd_tools-1.10.2-cp310-cp310-musllinux_1_2_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ i686

psd_tools-1.10.2-cp310-cp310-musllinux_1_2_aarch64.whl (1.6 MB view hashes)

Uploaded CPython 3.10 musllinux: musl 1.2+ ARM64

psd_tools-1.10.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (685.2 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

psd_tools-1.10.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (680.9 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

psd_tools-1.10.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (672.0 kB view hashes)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

psd_tools-1.10.2-cp310-cp310-macosx_10_9_universal2.whl (397.9 kB view hashes)

Uploaded CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)

psd_tools-1.10.2-cp39-cp39-win_amd64.whl (326.5 kB view hashes)

Uploaded CPython 3.9 Windows x86-64

psd_tools-1.10.2-cp39-cp39-win32.whl (315.5 kB view hashes)

Uploaded CPython 3.9 Windows x86

psd_tools-1.10.2-cp39-cp39-musllinux_1_2_x86_64.whl (1.7 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ x86-64

psd_tools-1.10.2-cp39-cp39-musllinux_1_2_i686.whl (1.8 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ i686

psd_tools-1.10.2-cp39-cp39-musllinux_1_2_aarch64.whl (1.6 MB view hashes)

Uploaded CPython 3.9 musllinux: musl 1.2+ ARM64

psd_tools-1.10.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (687.7 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

psd_tools-1.10.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (683.9 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

psd_tools-1.10.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (674.7 kB view hashes)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

psd_tools-1.10.2-cp39-cp39-macosx_10_9_universal2.whl (399.0 kB view hashes)

Uploaded CPython 3.9 macOS 10.9+ universal2 (ARM64, x86-64)

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page