带有FULLSCREEN标志的pygame呈现内容缩放

时间:2017-07-08 22:08:49

标签: python raspberry-pi pygame

我在覆盆子pi上使用pygame。 这个相同的代码用于覆盖全屏800x600,现在,1280x720它没有,并且它没有过度/不足:

Pygame示例输出: pygame example

通过omxplayer播放视频: video playback via omxplayer

pygame示例图片中的所有代码只是该问题的演示:

import pygame
import time
pygame.display.init()
pygame.font.init()
screen = pygame.display.set_mode((1280, 720)) #, pygame.FULLSCREEN)
screen.fill((255, 0, 0))
pygame.display.flip()
time.sleep(45)

1 个答案:

答案 0 :(得分:0)

您可以使用list_modes函数来返回可用的全屏分辨率列表:

modes = pygame.display.list_modes()
if modes: # check if the list is not empty
    screen = pygame.display.set_mode(modes[0], pygame.FULLSCREEN) # use the first one
else:
    screen = pygame.display.set_mode((800, 600)) # use a default resolution

注意:如果您在Windows上DPI缩放比例过高时遇到问题(例如,显示的一部分不可见),则可以使用以下代码进行修复:

import ctypes
ctypes.windll.shcore.SetProcessDpiAwareness(1)