how to change the scale of a picture in pygame
import pygame
picture = pygame.image.load(filename)
picture = pygame.transform.scale(picture, (1280, 720))
how to change the scale of a picture in pygame
import pygame
picture = pygame.image.load(filename)
picture = pygame.transform.scale(picture, (1280, 720))
pygame.transform.scale
pygame.transform.scale(Surface, (width, height), DestSurface = None)
pygame rotate image
import pygame
import pygame.font
pygame.init()
size = (400,400)
screen = pygame.display.set_mode(size)
clock = pygame.time.Clock()
def blitRotate(surf, image, pos, originPos, angle):
# calcaulate the axis aligned bounding box of the rotated image
w, h = image.get_size()
box = [pygame.math.Vector2(p) for p in [(0, 0), (w, 0), (w, -h), (0, -h)]]
box_rotate = [p.rotate(angle) for p in box]
min_box = (min(box_rotate, key=lambda p: p[0])[0], min(box_rotate, key=lambda p: p[1])[1])
max_box = (max(box_rotate, key=lambda p: p[0])[0], max(box_rotate, key=lambda p: p[1])[1])
# calculate the translation of the pivot
pivot = pygame.math.Vector2(originPos[0], -originPos[1])
pivot_rotate = pivot.rotate(angle)
pivot_move = pivot_rotate - pivot
# calculate the upper left origin of the rotated image
origin = (pos[0] - originPos[0] + min_box[0] - pivot_move[0], pos[1] - originPos[1] - max_box[1] + pivot_move[1])
# get a rotated image
rotated_image = pygame.transform.rotate(image, angle)
# rotate and blit the image
surf.blit(rotated_image, origin)
# draw rectangle around the image
pygame.draw.rect (surf, (255, 0, 0), (*origin, *rotated_image.get_size()),2)
font = pygame.font.SysFont('Times New Roman', 50)
text = font.render('image', False, (255, 255, 0))
image = pygame.Surface((text.get_width()+1, text.get_height()+1))
pygame.draw.rect(image, (0, 0, 255), (1, 1, *text.get_size()))
image.blit(text, (1, 1))
w, h = image.get_size()
angle = 0
done = False
while not done:
clock.tick(60)
for event in pygame.event.get():
if event.type == pygame.QUIT:
done = True
elif event.type == pygame.KEYDOWN:
if event.key==pygame.K_ESCAPE:
done = True
pos = (screen.get_width()//2, screen.get_height()//2)
pos = (200, 200)
screen.fill(0)
blitRotate(screen, image, pos, (w//2, h//2), angle)
angle += 1
pygame.draw.line(screen, (0, 255, 0), (pos[0]-20, pos[1]), (pos[0]+20, pos[1]), 3)
pygame.draw.line(screen, (0, 255, 0), (pos[0], pos[1]-20), (pos[0], pos[1]+20), 3)
pygame.draw.circle(screen, (0, 255, 0), pos, 7, 0)
pygame.display.flip()
pygame.quit()
pygame scale
#Start Libraries
import pygame, sys
from pygame.locals import *
#End Libraries
pygame.init() #We're initializing the script
pygame.display.set_caption('Platform') #This is the name of the window
window_size = (600,400) #The size of the window
screen = pygame.display.set_mode(window_size) #Initializing the screen
image_not_scaled = pygame.image.load('file_path.png').convert() #Importing the image
image = pygame.transform.scale(image_not_scaled, (32, 32)) #You can insert whatever you want for example (64, 64)
#It MUST be a tuple
#Now we'll create the while loop
run = True #With this we can control the script (stop it)
while run: #For NOW itz a simple while true
screen.fill((255, 255, 255)) #Filling the screen with white
screen.blit(image, (0, 0)) #Blitting the image on the screen
for event in pygame.event.get(): #Checking the events
if event.type == QUIT: #Checking if the event is QUIT
pygame.quit() #In that case we'll exit from pygame
sys.exit() #In that case we'll exit from the script
pygame.display.update() #Updating the screen
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us