Metadata-Version: 2.4
Name: psd-tools
Version: 1.10.7
Summary: Python package for working with Adobe Photoshop PSD files
Author-email: Mikhail Korobov <kmike84@gmail.com>, Kota Yamaguchi <KotaYamaguchi1984@gmail.com>
License: MIT License
Keywords: photoshop,psd
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Graphics
Classifier: Topic :: Multimedia :: Graphics :: Viewers
Classifier: Topic :: Multimedia :: Graphics :: Graphics Conversion
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: typing-extensions; python_version < "3.11"
Requires-Dist: docopt>=0.6.0
Requires-Dist: attrs>=23.0.0
Requires-Dist: Pillow>=10.3.0
Requires-Dist: aggdraw
Requires-Dist: numpy
Requires-Dist: scipy
Requires-Dist: scikit-image
Provides-Extra: dev
Requires-Dist: ipython; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: types-docopt; extra == "dev"
Provides-Extra: docs
Requires-Dist: sphinx; extra == "docs"
Requires-Dist: sphinx_rtd_theme; extra == "docs"
Dynamic: license-file

psd-tools
=========

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

|pypi| |build| |docs|

.. _specification: https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/

.. |pypi| image:: https://img.shields.io/pypi/v/psd-tools.svg
    :alt: PyPI Version
    :target: https://pypi.python.org/pypi/psd-tools

.. |build| image:: https://github.com/psd-tools/psd-tools/actions/workflows/ci.yml/badge.svg
    :alt: Build
    :target: https://github.com/psd-tools/psd-tools/actions/workflows/ci.yml

.. |docs| image:: https://readthedocs.org/projects/psd-tools/badge/
    :alt: Document Status
    :target: http://psd-tools.readthedocs.io/en/latest/

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
---------------

.. code-block:: python

    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.

.. _documentation: https://psd-tools.readthedocs.io/

Contributing
------------

See contributing_ page.

.. _contributing: https://github.com/psd-tools/psd-tools/blob/master/docs/contributing.rst

.. 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.
