Pygame 图像不适合,即使它与屏幕大小相同

问题描述 投票:0回答:1

我正在 pygame 中制作 Legends of Runeterra 模拟器(只是为了训练和玩耍),我想要一个用枕头制作的自定义背景图像,该图像会随着某些情况而变化。图像大小是 (1920, 1080),这是我的显示器大小,我的 pygame 屏幕被定义为相同的大小。但是当我在 pygame 中打开图像时,它会水平剪切前 200 个像素,我不知道为什么。

我可以通过将图像放在右侧 200 像素来修复它,但这会剪切图像并会扰乱我的 X 和 Y 点击检测器。

这是我要放入 pygame 中的图像以及它如何输入:(我必须放置一个 Imgur 链接,因为图像大于 2mb) https://imgur.com/dmXuboa https://imgur.com/a/0FnC3U8

pygame代码是:

import Core
import pygame
import random
import Bancoterra
import copy

pygame.init()

clock = pygame.time.Clock()

tam_tela = (1920, 1080)
tela = pygame.display.set_mode(tam_tela)
pygame.display.set_caption("Legends of Runeterra")

jog1 = []
x = 0
for i in Bancoterra.Banco:
    jog1.append(copy.copy(i))
    jog1.append(copy.copy(i))
    if len(jog1) < 36:
        jog1.append(copy.copy(i))
    x += 1
jog2 = copy.copy(jog1)

infos = Core.informacoes(Bancoterra.Jogador(jog1), Bancoterra.Jogador(jog2))

progras = True
while progras:
    clique = (-200, -200)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            progras = False
        if event.type == pygame.MOUSEBUTTONDOWN:
            if pygame.mouse.get_pressed()[0]:
                clique = pygame.mouse.get_pos()

**    num = Core.jogo(infos, clique)
    num[0] = num[0].save("tabuleiro.png")

    imp = pygame.image.load("tabuleiro.png")
    tela.blit(imp, (0, 0))**

    if num[1] is True:
        res = 0
        ganhador = []
        if infos.ordem[0].vida <= 0:
            res += 1
        if infos.ordem[1].vida <= 0:
            res -= 1
        if res == 1:
            ganhador.append(infos.ordem[0])
        elif res == -1:
            ganhador.append(infos.ordem[1])
        else:
            ganhador.append(infos.ordem)
        # progras = False

    pygame.display.flip()
    clock.tick(60)

pygame.quit()

python-imaging-library pygame-menu
1个回答
0
投票

我认为我的设备分辨率就是我的屏幕分辨率。所以解决方案是使用我所有的图像作为我的屏幕分辨率

© www.soinside.com 2019 - 2024. All rights reserved.