A module for making Splash Screens with videos, images, loading bars, text rendering, and threaded rendering support for your Applications.
Project description
splashscreen-engine
A module for making Splash Screens with videos, images, loading bars, text rendering, and threaded rendering support for your Applications.
Sample Preview
Features
- Background videos
- Background images
- Loading bars
- Text rendering
- Transparency support
- Threaded rendering
- Video looping
- Simple API
Installation
pip install splashscreen-engine
Example
import splashscreen_engine as splash
screen = splash.Screen()
screen.size(750,500)
# This Starts The Engine
screen.start()
# Background Video
video = splash.BackgroundVideo(
screen,
"exampleVid.mp4",
fps=30,
loop=True
)
video.play()
# Loading Bar
bar = splash.LoadingBar(screen)
bar.place()
# Text `loading`
text = splash.Text(
screen,
"Loading...",
"impact",
20,
(325,400)
)
text.show()
# LOADING | you can add your `loading` processes here
a = 0
while not a >= 100:
a += 0.3
text.edit(
text=f"loading : {round(a,2)}%"
)
bar.set_progress(a)
screen.wait(0.05)
text.edit(
text="loaded : 100%"
)
screen.wait(3)
# Stop the splash screen after loading
screen.stop()
"""
if you are using pygame module in your own code,
use `screen.stop(quit_pygame=False)`
instead of `screen.stop()`
"""
# Main Screen Example
import tkinter # pip install tkinter -- used as main screen for example.
main_screen = tkinter.Tk()
main_screen.geometry("750x500")
main_text = tkinter.Label(
main_screen,
text="Your Main Screen",
font=("impact",40)
)
main_text.pack()
main_screen.mainloop()
Requirements
- pygame
- opencv-python
- numpy
Functions
Basic Window
import splashscreen_engine as splash
screen = splash.Screen()
screen.size(750, 500)
screen.start()
Stop and Delete Screen
screen.stop()
# Use:
screen.stop(quit_pygame=False)
# if you are using pygame in your own application.
Set Size for your window
screen.size(750,500)
# Arguments:
# width, height, fullscreen
# OR
screen.size(fullscreen=True)
Set title for your window
screen.title("Your Title")
Set Background color
screen.set_bg_color((255,0,0)) # Red
Wait Function
Instead of using time.sleep(),
you can use this function because it prevents
the window not responding issue.
screen.wait(0.5) # Seconds
Background Video
You can add a video as the background of your splash screen using this function.
video = splash.BackgroundVideo(
screen,
"exampleVid.mp4",
fps=30,
loop=True
)
# loop = True / False
# default(False)
# fps = int
# default(30)
Play video
video.play()
Pause video
video.pause()
Resume video
video.resume()
Delete video
video.delete()
Transparency
Make your video transparent.
Transparency Level:
0 to 255
Default:
120
video.transparency(150)
Stop Transparency
video.stop_transparency()
Stopping / Resuming Video Loops
# Loop Video
video.loop = True
# Stop the Loop
video.stop_loop()
# OR
video.loop = False
To check whether the video is playing or stopped
# Returns True if playing else False
video.playing()
Background Image
You can add an image as the background of your splash screen using this function.
bg_img = splash.BackgroundImage(
screen,
"YourImage.png"
)
bg_img.set()
Progress Bar
This function adds a progress bar.
bar = splash.LoadingBar(
screen
)
# Arguments:
# parent, width, height
bar.place()
# Arguments:
# x, y, colour, loading_colour
Hiding the Progress Bar
bar.hide()
Setting Progress
bar.set_progress(50)
Text
Adds text on the screen.
text = splash.Text(
screen,
"Loading...",
"impact",
20,
(325,400)
)
# Arguments:
# parent, text, font,
# size, position, colour
text.show()
Show and Hide text
# Show text
text.show()
# Hide text
text.hide()
Contributing & Feedback
Discuss approaches, Suggest new features, Report bugs, or Share improvements through GitHub issues and discussions. or mail at : chhabranaman21@gmail.com
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file splashscreen_engine-1.0.3.tar.gz.
File metadata
- Download URL: splashscreen_engine-1.0.3.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7aff37d660cd5fb68cb1c6d162b61eb13694987b5a871d58b03b319cc70623c
|
|
| MD5 |
5536cfe6ef47f0d6fafaef329d188bc1
|
|
| BLAKE2b-256 |
52a88c6e9cd341c7e0929ec053cd0717da896e58b8f3f4650c2583f7ccfcd7f1
|
File details
Details for the file splashscreen_engine-1.0.3-py3-none-any.whl.
File metadata
- Download URL: splashscreen_engine-1.0.3-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2547c7ec0d7a670ce5222990ea6889d5157992156feab9eb3a845ab8595f82a6
|
|
| MD5 |
0e3bcf1709696562fe0df60e19651342
|
|
| BLAKE2b-256 |
e9d079ff82b570954aea856f94d80f2ee1236d582e369f512b9d29d23ec5113e
|