Skip to main content

tex2pptx

tex2pptx converts a LaTeX Beamer presentation into an editable Microsoft PowerPoint deck. It keeps supported text, lists, equations, tables, shapes, links, and notes editable, while figures remain movable and resizable assets.

The converter also produces PDFs of the LaTeX and PowerPoint renderings and an HTML report for reviewing visual differences and conversion diagnostics.

Install

Create an isolated Python environment and install the released package:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install tex2pptx==0.1.1

The package includes its compiled PowerPoint writer. You do not need the development repository, pnpm, TypeScript, or a local node_modules directory.

System requirements

The complete conversion workflow currently requires:

  • macOS with a logged-in desktop session
  • Python 3.10 or newer
  • Node.js 22 or newer
  • Pandoc
  • MacTeX or an equivalent TeX Live installation
  • Microsoft PowerPoint installed at /Applications/Microsoft PowerPoint.app

The TeX installation must provide latexmk, SyncTeX, dvisvgm, pdfLaTeX, XeLaTeX, and LuaLaTeX. Check the installation before converting a deck:

tex2pptx doctor

The command reports every missing or unsupported prerequisite and a suggested remedy.

Convert a presentation

Inspect the main Beamer file without creating conversion artifacts:

tex2pptx inspect path/to/presentation.tex

Convert it into an explicit output directory:

tex2pptx convert path/to/presentation.tex --to path/to/output

For presentation.tex, the output directory contains:

presentation.pptx
presentation-from-latex.pdf
presentation-from-powerpoint.pdf
presentation-report/

PowerPoint opens during final validation. On first use, macOS may ask for Automation permission; grant access and let the command finish before using PowerPoint. Review the two PDFs and the HTML conversion report before circulating the deck.

Troubleshooting

  • If tex2pptx is not found, activate the virtual environment in which it was installed.
  • If doctor reports an old or missing Node.js runtime, install Node.js 22 or newer and open a new terminal.
  • If TeX commands are missing after installing MacTeX, open a new terminal so its command directory is added to PATH.
  • If PowerPoint validation fails, confirm that PowerPoint is installed in /Applications and that macOS Automation permission has been granted to the terminal application running tex2pptx.
  • If conversion completes with warnings, open the generated HTML report and review the listed slides and fallback objects.

Download files

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

Source Distribution

tex2pptx-0.1.1.tar.gz (286.9 kB view details)

Uploaded Source

Built Distribution

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

tex2pptx-0.1.1-py3-none-any.whl (309.4 kB view details)

Uploaded Python 3

File details

Details for the file tex2pptx-0.1.1.tar.gz.

File metadata

  • Download URL: tex2pptx-0.1.1.tar.gz
  • Upload date:
  • Size: 286.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tex2pptx-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f7a78be1cc946cbd33baa1d2cf7658a774dabcfb4d36a427e34c3d1dac06a4ea
MD5 5132c69ce955c09ebe13e99d7966d597
BLAKE2b-256 d18255cc34a094d07a550c3c647a70b3bd5f5d74e18b01a6890301dca41f68b4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tex2pptx-0.1.1.tar.gz:

Publisher: release.yml on zhuoxiang-zhou/tex2pptx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tex2pptx-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: tex2pptx-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 309.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for tex2pptx-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 1bc46ae3d29b46c44382048dd54865d5b998a465de5596c0b3af1731e09997ef
MD5 d2edee80a0fa7e058a7aaeaad7586adc
BLAKE2b-256 949bd1b4e70778f71b03cf0544ffe2ae4ba546ecc8cae5be26cc4c3bb6e60d33

See more details on using hashes here.

Provenance

The following attestation bundles were made for tex2pptx-0.1.1-py3-none-any.whl:

Publisher: release.yml on zhuoxiang-zhou/tex2pptx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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