A pygame addon for animated image files
Project description
gif_pygame
A pygame addon that allows you to load, animate, and render animated image files like .gif and .apng
How to use
# example code
import pygame, sys, gif_pygame
win = pygame.display.set_mode((512, 512))
example_gif = gif_pygame.load("example.gif") # Loads a .gif file
example_png = gif_pygame.load("example.png") # Loads a .png file, the module supports non-animated files, but it is not recommended
s1 = pygame.Surface((66, 66))
s2 = pygame.Surface((66, 66))
s3 = pygame.Surface((66, 66))
s1.fill((255, 0, 0))
s2.fill((0, 255, 0))
s3.fill((0, 0, 255))
example_surfs = gif_pygame.GIFPygame([(s1, 1), (s2, 1), (s3, 1)])
while True:
win.fill((0, 0, 0))
# There are 2 ways of rendering the animated img file, the first method is doing "gif.render(surface, (x, y))", the other method is doing "surface.blit(gif.blit_ready(), (x, y))". THE ".blit_ready()" FUNCTION MUST BE CALLED WHEN DOING THE SECOND METHOD
example_gif.render(win, (128-example_gif.get_width()*0.5, 256-example_gif.get_height()*0.5))
example_png.render(win, (256-example_png.get_width()*0.5, 256-example_png.get_height()*0.5))
win.blit(example_surfs.blit_ready(), (384-example_surfs.get_width()*0.5, 256-example_surfs.get_height()*0.5))
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit(); sys.exit()
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_ESCAPE:
if example_gif.paused: # Check whether `example_gif` is paused or not
example_gif.unpause() # unpauses `example_gif` if it was paused
else:
example_gif.pause() # pauses `example_gif` if it was unpaused
if example_png.paused: # Check whether `example_png` is paused or not, since this is a non-animated image, it will not be affected
example_png.unpause() # unpauses `example_png` if it was paused, since this is a non-animated image, it will not be affected
else:
example_png.pause() # pauses `example_png` if it was unpaused, since this is a non-animated image, it will not be affected
if example_surfs.paused: # Check whether `example_surfs` is paused or not
example_surfs.unpause() # unpauses `example_surfs` if it was paused
else:
example_surfs.pause() # pauses `example_surfs` if it was unpaused
pygame.display.update()
To recap:
gif_pygame.load
loads in the image
To render the image you've got 2 options:
img.render(surf, (x, y))
surf.blit(img.blit_ready(), (x, y))
(.blit_ready()
can be used to return the current frame's surface)
There are other extra functions. The ones showcased in the example code are img.pause()
and img.unpause()
.
There are also:
GIFPygame.get_width()
, returns the width of the imageGIFPygame.get_height()
, returns the height of the imageGIFPygame.get_size()
, returns the size of the imageGIFPygame.get_rect()
, returns the rect of the imageGIFPygame.get_surfaces()
, returns a list of all surfaces in the animation, you can also pass in certain indexesGIFPygame.set_surface()
, replaces some of the surfaces in the animation with newer surfaces.get_durations()
, returns a list of all durations in the animation, you can also pass in certain indexes.set_duration()
, replaces some of the durations in the animation with newer durations.get_datas()
, returns a list of all surfaces and durations in the animation, you can also pass in certain indexes.set_data()
, replaces some of the surfaces and durations in the animation with newer surfaces and durations.get_alphas()
, returns a list of that includes the alphas of all surfaces in the animation, you can also pass in certain indexes.set_alpha()
, replaces all the alphas of surfaces with newer alphas, you can also pass in certain indexes
Please use python's help()
function for more in-depth explanation
(A documentation will be added soon)
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
gif_pygame-1.1.0.tar.gz
(10.0 kB
view details)
Built Distribution
File details
Details for the file gif_pygame-1.1.0.tar.gz
.
File metadata
- Download URL: gif_pygame-1.1.0.tar.gz
- Upload date:
- Size: 10.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 344a21ad0516d1a37a578b17bf88b80cebbbde4e6390a788e360d3d9e6189b08 |
|
MD5 | 29d0f7272dd65e24c2c19692a3e67bf9 |
|
BLAKE2b-256 | 6532e9865f6defe0eba5e757fdf3cac948722ee92e04ce1259da0805b225da2a |
File details
Details for the file gif_pygame-1.1.0-py3-none-any.whl
.
File metadata
- Download URL: gif_pygame-1.1.0-py3-none-any.whl
- Upload date:
- Size: 9.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4d4d08b937541da6804e77631d7e75507a5907e86f315ec767a4bf0e054c90a |
|
MD5 | 9da048f357e4a60aac4444367e43a3ea |
|
BLAKE2b-256 | 83193d088626a9cf39e675e2c3951a75a192140fdb194302a65dc69588548479 |