Skip to main content

Convert .pptx presentations to image files easily.

Project description

pptxtoimages

PyPI version Downloads License

Overview

pptxtoimages is a lightweight Python package to convert .pptx PowerPoint presentations into high-quality image files (PNG by default).
It uses LibreOffice (soffice) to convert .pptx files to PDF, then converts PDF pages to images using pdf2image.

This project aims to provide an easy-to-use, open-source tool for developers who need to quickly generate slide images from PowerPoint files for further processing, presentations, or video creation.


Features

  • Convert .pptx slides to images automatically
  • Output images saved in PNG format by default
  • Supports batch processing of multi-slide presentations
  • Cross-platform support (Windows, Linux, macOS) with LibreOffice installed
  • CLI support for quick command line usage

Installation

Make sure you have the following prerequisites installed:

  • LibreOffice (soffice command available in your system PATH)
  • Poppler utilities installed (poppler-utils on Linux)

Then install the package via pip:

    pip install pptxtoimages

Usage

Python

    from pptxtoimages.tools import PPTXToImageConverter

    # Initialize converter
    converter = PPTXToImageConverter(pptx_path)

    # Convert your .pptx file to images
    images = converter.convert("path/to/presentation.pptx", output_dir="output_images")

    print(f"Converted {len(images)} slides to images.")

Command Line Interface (CLI)

Convert a pptx file directly from the terminal :

    pptxtoimages-cli path/to/presentation.pptx --output output_images

Note : For more examples and details, please check the example.py file.


Configuration

  • Output image format is PNG by default, but can be customized in the Converter class parameters.

  • Output directory will be created if it does not exist.

Development

To contribute or develop locally:

  1. Clone the repository
  2. Create a virtual environment and activate it
  3. Install dependencies:
    pip install -r requirements.txt
  1. Use bump2version to manage versioning
  2. Run tests and linting (if any)
  3. Open a pull request

Links

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

Created by Burak Civelek

Feel free to reach out for questions or suggestions!

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

pptxtoimages-0.1.3.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pptxtoimages-0.1.3-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file pptxtoimages-0.1.3.tar.gz.

File metadata

  • Download URL: pptxtoimages-0.1.3.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for pptxtoimages-0.1.3.tar.gz
Algorithm Hash digest
SHA256 d21e4cf118b8811215fe849676376a6fb11572b00ee8466308027258978bd543
MD5 913e345bbc92b978fda68e1e486b54da
BLAKE2b-256 804763e733a4d31930d4a675164ce0cbb1f546380e52c28a7787008760d991ba

See more details on using hashes here.

File details

Details for the file pptxtoimages-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: pptxtoimages-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.18

File hashes

Hashes for pptxtoimages-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 50caa3eea969d6f121050a81992d3d3d660117ce077411e7d8f1c8b535ee1c44
MD5 7a5717c082fd0d6fac2cafac8ff99954
BLAKE2b-256 e09e37a1796301049fb41e4795409812ac3082deea35641d4e9f620e15bb1553

See more details on using hashes here.

Supported by

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