python package for replaceing elemnets in pptx files
Project description
pptx-replace
A python package for replaceing text, images and tables in pptx files
import pptx
import pptx_replace
prs = Presentation("tests/templates/test_template.pptx")
replace_text(prs, "{Main title}", "this is main report title")
slide = prs.slides[1]
replace_text(slide, "{title}", "This is a title")
replace_picture(prs.slides[0], "image.png", auto_reshape=True)
installation
pip install pptx-replace
If you want to put altair
picture into pptx file, you need install some extra packages.
pip install "pptx-replace[alt]"
see: https://github.com/altair-viz/altair_saver
extra dependency
Depends on your usage, if you want to export table and keep style in jupyter, selemium
and browser driver is required.
see: https://github.com/dexplo/dataframe_image/
usage
First open your pptx file.
import pptx
import pptx_replace
prs = Presentation("tests/templates/test_template.pptx")
replace text
Replace any text in your ppt
# repalce all occurances of {Main title} in pptx
replace_text(prs, "{Main title}", "this is main report title")
slide = prs.slides[1]
# replace in just one slide
replace_text(slide, "{title}", "This is a title")
replace_text(slide, "{content}", "a quick brown fox jumps over the lazy dog\n" * 5)
replace picture
Replace picture just by matplotlib figuer!
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
fig = plt.gcf()
replace_picture(prs.slides[1], fig, auto_reshape=False, order="l2r")
replace table
replace table by pandas dataframe
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(6, 10))
replace_table(slide, df)
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
pptx_replace-0.1.5.tar.gz
(13.8 MB
view hashes)
Built Distribution
Close
Hashes for pptx_replace-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2322d9d9d16977e7866db8657abef79d4ba2713c9c47b47994da087387782c9a |
|
MD5 | c11f0b3e516aa9f779f44ac5158c09d0 |
|
BLAKE2b-256 | 78962f2372b26aa00984b3e99317a3bedba690815013072ffd8233c817db2b18 |