Image to PDF API - Command Line Tool

Convert various image formats to PDF from the command line using the Pdfcrowd API v2.


Install the application from PyPI
 $ pip install pdfcrowd

You can learn more about other install options here.


Authentication is needed in order to use the Pdfcrowd API. The credentials used for accessing the API are your Pdfcrowd username and the API key. You can sign up for the Pdfcrowd API here.


Convert a local PNG file to a PDF file
image2pdf -user-name "your_username" -api-key "your_apikey" \
    "/path/to/logo.png" > logo.pdf
Convert url with PNG file to a PDF file
image2pdf -user-name "your_username" -api-key "your_apikey" \
    "" > logo.pdf

Tips & Tricks

image2pdf Manual

Conversion from an image to PDF.

usage: image2pdf [options] source

Conversion from an image to PDF.

positional arguments:
  source                Source to be converted. It can be URL, path to a local
                        file or '-' to use stdin as an input text.

optional arguments:
  -user-name USER_NAME  Your user name at
  -api-key API_KEY      Your API key at
  -resize RESIZE        Resize the image. The resize percentage or new image
  -rotate ROTATE        Rotate the image. The rotation specified in degrees.
  -debug-log            Turn on the debug logging. Details about the
                        conversion are stored in the debug log.
  -tag TAG              Tag the conversion with a custom value. The tag is
                        used in conversion statistics. A value longer than 32
                        characters is cut off. A string with the custom tag.
  -use-http             Specifies if the client communicates over HTTP or
                        HTTPS with Pdfcrowd API.
  -user-agent USER_AGENT
                        Set a custom user agent HTTP header. It can be usefull
                        if you are behind some proxy or firewall. The user
                        agent string.
  -proxy PROXY          Specifies an HTTP proxy that the API client library
                        will use to connect to the internet. PROXY must
                        contain 4 values separated by a semicolon. The proxy
                        hostname. The proxy port. The username. The password.
  -retry-count RETRY_COUNT
                        Specifies the number of retries when the 502 HTTP
                        status code is received. The 502 status code indicates
                        a temporary network issue. This feature can be
                        disabled by setting to 0. Number of retries wanted.

produced by:


  • Check API Status Codes in case of the error code is returned.
  • You can use -debug-log to get detailed info about the conversion, such as conversion errors, time, console output.
  • Take a look at the FAQ section.