The problem with any presentation software such as PowerPoint, iWork Keynote or LibreOffice Impress is that they present in full-screen, which isn't the best option when you are doing live screen sharing and using other apps at the same time. This slideshow app, written in Python 3.8 will help you out in such a case. The best part is that it is open-source, and even Not-Experienced Python developers can understand, easily!
More Demonstrations: Wiki Page
- Click here to clone the repository. Extract all the contents into one folder.
If you choose to use 'Slideshow Software.py' or Without Pillow.py in IDLE, open Command Prompt or Terminal on your computer and install Pillow with pip, like this:
pip install Pillow
Or, if your default Python version is Python 2.7 (find out with python --version
),
pip3 install Pillow
-
Open 'Slideshow Software.py' and not Without Pillow.py in IDLE
-
Click on Run -> Run Module and wait for a tkinter window to pop up.
Alternatively, you can also try executing python3
or python
followed by your file's location like this, in Terminal or Command Prompt
python3 /Users/Me/Documents/Python3-Slideshow-Software-master/Slideshow Software.py
- Click on 'Create your slideshow' if you already have your pictures in one folder.
If you do not, click on 'Export PPTX as images' to get the instructions as an alert, like this.
- Select the folder which contains the images for the slideshow.
- Your presentation has started!
- You can now change the slides from the 'Controls' window.
- In your call, click on 'Share Screen' and select your presentation! You also have a window for presenter notes!
- If you wish to stop, from the 'Slideshow' dropdown menu in the ribbbon, select 'Quit'.
- Change the name of the presentation (Window Title) from line 23 of Slideshow Software.py or line 22 of Without Pillow.py
root.title('Python Presentation Software')
- Change Welcome_Screen.py to a picture that you prefer, or change the directory on line 162 of Slideshow Software.py or line 161 of Without Pillow.py
Degraded Image quality after resizing in Without Pillow.py
-
If the image turns out to be a little blurry or degraded in Without Pillow.py, Just move to a different slide and go back. This is a problem with tkinter's Photoimage class.
-
Click on the Set Size to resize the image, which also refreshes the slide during runtime
-
Execute
open_img
one more time, though the Set Size button already does that
For further queries, create an issue and I will get back to you as fast as possible.
-
This happens if you try and go to the next slide after reaching the last one. I have fixed the code once it first happened.
-
You need to check your code and see if any extra item gets added to
filelist
. If that is happening, just remove it withfilelist.pop()
and the index as argument
- This is an error that occurs only because the filedialog returns an empty string, and
os.listdir
can't make out what is in the directory, so that too returns an empty list.
filedir = filedialog.askdirectory(title='Where are all your images?')
filename = os.listdir(filedir)
- Now, tkinter wants to open the image from the directory, and nothing is there for it to open, so you will get a huge error linking to line
1883
of tkinter's__init__.py
file.
Exception in Tkinter callback
Traceback (most recent call last):
File "/Some Directory/tkinter/__init__.py", line 1883, in __call__
return self.func(*args)
File "/Some Directory/Slideshow App V2.py", line 33, in next_func
filename = os.listdir(filedir)
FileNotFoundError: [Errno 2] No such file or directory: ''
- To fix this, you need to show an alert with
showinfo
and quit the program iffilename
is empty
- I have worked on this project and debugged it for over a week. If you have any other problem or feature you would like to suggest, submit an issue. I will give update the code in a couple days and put the soulution in this list and I will also respond to your issue in the issues tab
Release Information in Wiki
-
Version 1.0 (Deprecated): Presenter notes, slidehshow controls in new window
-
Version 2.0: Save an load presenter notes, hide and show presenter notes and controls, resize slides with slider, ribbon menus for slideshow, controls, presenter notes and help
I am unable to fix these issues, so you can solve these and tell me how you solved by submitting an issue
- Split
.pptx
presentations to images without thepython-pptx
module. - Split
.pdf
documents into images without thepdf2jpg
module. - Download images from the web and create presentations from those.