File formatsWorksSource available
Target: psdparse

psdparse: C++17 PSD Reader and Writer

by wtnbgo Repository0 views
Platform
Cross-platform (Windows, Linux, macOS)
Outcome
Works

Evidence at a glance

Loading source evidence…

What was done

psdparse is a C++17 library with Python bindings designed for efficient PSD file manipulation. It features lazy I/O, byte-identical round-trip saving, and extensive support for layer editing, effects, and text, with performance optimizations including SIMD and multithreading.

psdparse is a pure C++17 library designed for reading and writing Adobe Photoshop (PSD) files, featuring pybind11-based Python bindings. The library implements lazy I/O, where structural metadata is read upfront while layer pixels are paged in on demand via mmap or stream callbacks, preventing unnecessary memory usage. It supports byte-identical round-trip saving and provides an API for editing layers, masks, layer effects, and text. The library was extracted from the psdfile kirikiri plugin in 2026. Recent development has focused on performance, including AVX2 SIMD optimizations for blending modes and multithreaded processing for effects and adjustments. The author reports that these optimizations were verified against Photoshop-generated samples to ensure byte-identical results in many cases. The project includes a test suite using pytest, which utilizes both synthesized fixtures and optional real-world samples. Development commits frequently credit Claude Opus 5.5 as a co-author for various features and fixes. While the library provides tools for layer extraction and composition, it does not perform full rendering, relying instead on the Python imaging ecosystem for such tasks.

Sources: Source 1, Source 2

Reproduce it

setup
Install via `pip install .` (requires CMake 3.16+ and a C++17 compiler). Run tests using `python -m pytest -v` after building the Python module.