Skip to main content

Convert PDF Slides to PowerPoint Presentations with Vector Graphics

Project description

pdf2ppt

Convert PDF Slides to PowerPoint Presentations (PPT)

Motivation

  • LaTeX users can easily convert the beamer slides in PDF to PPT.
  • Typst users can easily convert the touying slides in PDF to PPT.

Features

  • vector graph (highest resolution) in generated PPT
  • metadata (including title, author) conversion
  • auto-detection of slide size and aspect ratio

Dependency

Technical Implementation

  1. The first step is to create SVG from PDF via pdf2svg.
  2. Due to the limitation of python-pptx, we need to convert SVG to EMF via inkscape.
  3. Insert EMF into PPT via python-pptx.

[!NOTE] python3, pdf2svg and inkscape should be in your PATH. Alternatively, --pdf2svg-path and --inkscape-path options can be used to specify their paths.

Usage

Installation

Use git to clone the repository.

git clone https://github.com/Teddy-van-Jerry/pdf2ppt.git --depth=1

If you only want the latest Python script, you can directly download the source file.

wget https://raw.githubusercontent.com/Teddy-van-Jerry/pdf2ppt/master/pdf2ppt

For non-Windows users, use make install to install the script to /usr/local/bin (which should be in your PATH variable).

[!TIP] Make sure you have the dependency installed.

Command Line Options

You can use pdf2ppt -h to view all options.

Quick Start

[!NOTE] If you have not installed pdf2ppt to your PATH, you need to use ./pdf2ppt in the correct directory.

Specifying the output file name.

pdf2ppt input.pdf output.pptx

Without specifying output file name. The output will be input.pptx under the same directory of input.

pdf2ppt input.pdf

Toggle verbose mode.

pdf2ppt input.pdf output.pptx --verbose

Known Issues

Transparent Background

Unfortunately, elements with transparency are not supported by the project, due to limitations of the dependency. You will receive a warning when such issues are detected, and you can copy the generated SVG manually to fix the problem. View #1 for more details.

License

Copyright ©️ 2023-2024 Teddy van Jerry (Wuqiong Zhao). This project is distributed under the MIT License.

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

pdfslides2ppt-1.0.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

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

pdfslides2ppt-1.0.0-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file pdfslides2ppt-1.0.0.tar.gz.

File metadata

  • Download URL: pdfslides2ppt-1.0.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.6

File hashes

Hashes for pdfslides2ppt-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6cfe684e8b31d494b059c1f43100513bf679bb8cdde747b921fbdc0496ebd3e2
MD5 bc9ac9e4494bb64909b9cb3c2c1e818b
BLAKE2b-256 c8633b1f8b63a0206a1d746a173ff7871e789bcc54144cf08cf79fd19efb22f0

See more details on using hashes here.

File details

Details for the file pdfslides2ppt-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: pdfslides2ppt-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.6

File hashes

Hashes for pdfslides2ppt-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f006a8762fa9b1ebddfee084c7ddb3fdb0450e736056e89093d7c0ba59e66e1e
MD5 4184c5706fe6938fcfc4a47f1636fc17
BLAKE2b-256 683860be1b6d3585b8163290e8e3bf280beeaa3cf81df0f43c86a1ec69c1b023

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