skillfed

ghostscript

Interface to the Ghostscript C-API, both high- and low-level, based on ctypes

ghostscript v0.8.1 391.6K downloads/30d#7,014 on PyPI
Copyleft license GPL-3.0-or-later AGING released

What it is and what it does

python-ghostscript wraps the Ghostscript C-API using Python's ctypes module, allowing you to invoke Ghostscript functionality directly from Python code. It provides both a low-level interface for direct C-API calls and a higher-level Pythonic API for common tasks like PostScript-to-PDF conversion. The package is intended for developers and requires an external Ghostscript installation (version 9.0.8 or higher) on the system.

You use it by instantiating a Ghostscript object with command-line arguments, similar to calling the Ghostscript command-line tool from Python. It supports processing files or passing document strings directly. The package has no Python runtime dependencies but depends on ctypes (part of the standard library) and the Ghostscript C library being available on your system.

Use it for:

  • Convert PostScript files to PDF or other formats programmatically within a Python application.
  • Process PDF files using Ghostscript operations (rendering, merging, optimization) from Python code.
  • Build document processing pipelines that need PostScript interpretation or PDF manipulation.
  • Automate batch conversion of PostScript documents to other formats in a Python workflow.
  • Embed Ghostscript functionality in a larger Python application without shelling out to the command line.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides a Python interface to the Ghostscript C-API using ctypes, enabling PostScript and PDF processing through both low-level and high-level APIs.

Yes, if you need PostScript or PDF processing in Python and can install Ghostscript separately. The package is stable and has low install friction. However, the aging maintenance status (443 days since last release) and GPL-3.0-or-later copyleft license warrant careful consideration of your project's licensing constraints. Not suitable for projects that cannot accept GPLv3 obligations.

Install

ghostscript on PyPI

pip

pip install ghostscript

uv

uv add ghostscript

poetry

poetry add ghostscript

Installing ghostscript

Before you install

Low install friction as a pure-Python wheel. Maintenance is aging (443 days since last release), though the package is marked Production/Stable and has been active since 2010.

License in practice

Licensed under GPL-3.0-or-later (copyleft). Any code linking this package must comply with GPLv3 terms, including potential source code disclosure obligations.

Quickstart

import ghostscript

args = ["ps2pdf", "-dNOPAUSE", "-dBATCH", "-dSAFER",
        "-sDEVICE=pdfwrite", "-sOutputFile=out.pdf", "-f", "input.ps"]
ghostscript.Ghostscript(*args)

Requires Ghostscript (system library) version 9.0.8 or higher to be installed separately; ctypes is used to call the Ghostscript C-API.

Verify before relying

  • Current compatibility with Ghostscript versions beyond 9.0.8 and whether all tested Python versions (3.6–3.13) remain actively supported.
  • Whether the package works reliably on non-Linux platforms, as documentation notes testing is limited to GNU/Linux.

Package facts

License GPL-3.0-or-later (copyleft)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance aging — 443 days since the last release
First released
Downloads 391,619/month — #7,014 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: ghostscript-0.8.1-py3-none-any.whl

Keywords: Ghostscript, PDF, Postscript

Development Status :: 5 - Production/StableIntended Audience :: DevelopersNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries :: Python Modules

Tags

ghostscript python interfacepdf postscript processingghostscript ctypes wrapperps2pdf conversionpdf manipulation pythonpostscript interpreterghostscript bindings
pdf-processingpostscriptctypes-wrapper

More Python Modules packages