La funzione pygame.image.load()
Come caricare una immagine su PyGame
La funzione pygame.image.load() carica il file di una immagine nello script Python che utilizza il modulo PyGame.
pygame.image.load(x)
Dove l'argomento x è il nome del file dell'immagine (gif, jpg, png, bmp, ecc. ) tra apici.
Un esempio pratico
In questo script carico un file immagine PNG nello script e la visualizzo sullo schermo.
- import pygame
- from pygame.locals import *
- pygame.init()
- finestra1 = pygame.display.set_mode((400,300))
- finestra1.fill((255,255,255))
- pygame.display.set_caption('Titolo della finestra')
- icona = pygame.image.load('batteria.png')
- finestra1.blit(icona, (180, 100))
- pygame.display.update()
- running = True
- while running:
- for event in pygame.event.get():
- if event.type == QUIT:
- running=False
Nelle righe 1-6 importo le librerie, inizializzo preparo l'area di lavoro di pygame.
Nella riga 7 carico in memoria il file immagine "batteria.png" tramite la funzione image.load() e lo salvo nella variabile icona.
icona = pygame.image.load('batteria.png')
Dopo l'assegnazione, nella riga 8 uso il metodo blit() per visualizzare l'imagine alle coordinate x=180, y=100 pixel dell'area di lavoro.
finestra1.blit(icona, (180, 100))
Il resto del programma aggiorna e visualizza l'area di lavoro, impedendo la chiusura automatica dello script.
Il risultato in output è il seguente:
Lo script visualizza l'immagine nella posizione indicata.
Nota. L'immagine è registrata in una variabile (oggetto). Questo mi permette anche di animarla. Ad esempio, posso cambiargli la posizione sullo schermo o sostituirla con un'altra immagine al verificarsi di un particolare evento.
Il metodo convert()
Quando carico un'immagine è utile convertirla alla stessa risoluzione del display per velocizzare le operazioni di visualizzazione.
.convert()
Se il display e l'oggetto di superficie hanno la stessa risoluzione, il processo di visualizzazione è più rapido.
Esempio
pygame.image.load('immagine.png').convert()
Il metodo convert_alpha()
Questo metodo applica una trasparenza alfa all'immagine.
.convert_alpha()
E' utile quando si modifica l'immagine del puntatore del mouse e nella visualizzazione degli sprites del gioco.
Esempio
pygame.image.load('immagine.png').convert_alpha()
E così via.