Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

psd-tools

Package Overview
Dependencies
Maintainers
2
Versions
105
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

psd-tools

Python package for working with Adobe Photoshop PSD files

pipPyPI
Version
1.12.1
Maintainers
2

psd-tools

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

PyPI Version Tests 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.
  • Editing of texts in type layers
  • Composition of adjustment layers
  • Composition of many layer effects
  • Font rendering

Installation

Use pip to install the package:

pip install psd-tools

For advanced layer compositing features, install with the composite extra:

pip install 'psd-tools[composite]'

The composite extra provides optional dependencies (aggdraw, scipy, scikit-image) for advanced rendering features:

  • Vector shape and stroke rendering
  • Gradient and pattern fills
  • Layer effects rendering

Basic compositing works without these dependencies using cached previews or simple pixel-based operations. Note that the composite extra may not be available on all platforms (notably Python 3.14 on Windows).

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.

Note

PSD specification is far from complete. If you cannot find a desired information in the documentation, you should inspect the low-level data structure.

Keywords

photoshop

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts