Skip to main content

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

Project description

Author:

Hartmut Goebel <h.goebel@crazy-compiler.com>

Version:
0.6
License:

GNU Public License v3 (GPLv3)

Homepage:

https://gitlab.com/pdftools/python-ghostscript

Ghostscript is a well known interpreter for the PostScript language and for PDF. This package implements a interface to the Ghostscript C-API using ctypes. Both a low-level and a pythonic, high-level interface are provided.

This package is currently tested only under GNU/Linux. Please report whether it works in your environment, too. Thanks.

Example

Here is an example for how to use the high-level interface of python-ghostscript. This implements a very basic ps2pdf-tool:

import sys
import locale
import ghostscript

args = [
    "ps2pdf", # actual value doesn't matter
    "-dNOPAUSE", "-dBATCH", "-dSAFER",
    "-sDEVICE=pdfwrite",
    "-sOutputFile=" + sys.argv[1],
    "-c", ".setpdfwrite",
    "-f",  sys.argv[2]
    ]

# arguments have to be bytes, encode them
encoding = locale.getpreferredencoding()
args = [a.encode(encoding) for a in args]

ghostscript.Ghostscript(*args)

Here an example for passing a string document to Ghostscript:

doc = b"""%!
/Helvetica findfont 20 scalefont setfont
50 50 moveto
(Hello World) show
showpage
quit
"""

import ghostscript

args = b"""test.py
     -dNOPAUSE -dBATCH -dSAFER -sDEVICE=pdfwrite -sOutputFile=/tmp/out.pdf
     -c .setpdfwrite""".split()

with ghostscript.Ghostscript(*args) as gs:
    gs.run_string(doc)

More examples can be found in the examples subdirectory of the distribution archive.

Requirements and Installation

Please note:

This package is meant for developers. Even if there are some usable examples included, installations instructions are meant for developers.

python-ghostscript requires

  • Python 2.7 or higher (tested with Python 2.7, 3.4, 3.6 and 3.6)

  • setuptools for installation (see below)

  • Ghostscript Version 8.x or higher (tested with 9.x)

Installing python-ghostscript

Since this package is meant for developers, we assume you have experience in installing Python packages.

python-ghostscript is listed on PyPI (Python Package Index), so you can install it using pip install ghostscript as usual. Please refer to the manuals of pip for further information.

Alternatively you my download and unpack the source package of python-ghostscript from http://pypi.python.org/pypi/ghostscript and run:

python ./setup.py install

Project details


Download files

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

Source Distribution

ghostscript-0.6.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

ghostscript-0.6-py2.py3-none-any.whl (15.2 kB view details)

Uploaded Python 2Python 3

File details

Details for the file ghostscript-0.6.tar.gz.

File metadata

  • Download URL: ghostscript-0.6.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ghostscript-0.6.tar.gz
Algorithm Hash digest
SHA256 ad0a71048dd96644c46d09f7c8c7d479e2b4d290ca3125cc49540e463a2877ac
MD5 5be9c4fedce48d1946a181979b5b4258
BLAKE2b-256 949e7336c40a3286ee4b58016a5e032102715e2517c343ac3b7d672c2c92210c

See more details on using hashes here.

File details

Details for the file ghostscript-0.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for ghostscript-0.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 db90da79326ae62e4a3cc58a7c39c4be6503ad71c5e73047fb68599ae5e40cba
MD5 579c0878726acae200da60305b4fef22
BLAKE2b-256 d0bdc96072da3a98a498285382ec6ee4b18379c021e4bb6561308e25bc4c04d0

See more details on using hashes here.

Supported by

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