Pygame – Loading image

Pygame – Loading Image ”; Previous Next The pygame.image module contains functions for loading and saving images from file or file like object. An image is loaded as a Surface object which eventually is rendered on Pygame display window. First we obtain a Surface object by load() function. img = pygame.image.load(”pygame.png”) Next we obtain a rect object out of this Surface and then use Surface.blit() function to render the image − rect = img.get_rect() rect.center = 200, 150 screen.blit(img, rect) Example The complete program for displaying Pygame logo on the display window is as follows − import pygame pygame.init() screen = pygame.display.set_mode((400, 300)) img = pygame.image.load(”pygame.png”) done = False bg = (127,127,127) while not done: for event in pygame.event.get(): screen.fill(bg) rect = img.get_rect() rect.center = 200, 150 screen.blit(img, rect) if event.type == pygame.QUIT: done = True pygame.display.update() Output The output for the above code is as follows − The blit() function can take an optional special-flags parameter with one of the following values − BLEND_RGBA_ADD BLEND_RGBA_SUB BLEND_RGBA_MULT BLEND_RGBA_MIN BLEND_RGBA_MAX BLEND_RGB_ADD BLEND_RGB_SUB BLEND_RGB_MULT BLEND_RGB_MIN BLEND_RGB_MAX The pygame.Surface module also has a convert() function which optimizes the image format and makes drawing faster. The pygame.image module has a save() function that saves contents of Surface object to an image file. Pygame supports the following image formats − Loading image formats Saving image formats JPG PNG GIF (non-animated) BMP PCX TGA (uncompressed) TIF LBM (and PBM) PBM (and PGM, PPM) XPM BMP TGA PNG JPEG Example Following program draws three circles on the display surface and save it as a circles.png file using image.save() function. import pygame pygame.init() screen = pygame.display.set_mode((400, 300)) done = False white=(255,255,255) red = (255,0,0) green = (0,255,0) blue = (0,0,255) bg = (127,127,127) while not done: for event in pygame.event.get(): screen.fill(bg) if event.type == pygame.QUIT: done = True pygame.draw.circle(screen, red, (200,150), 60,2) pygame.draw.circle(screen, green, (200,150), 80,2) pygame.draw.circle(screen, blue, (200,150), 100,2) pygame.display.update() pygame.image.save(screen, “circles.png”) Output The circles.png should be created in the current working folder. Print Page Previous Next Advertisements ”;