Pygame:重新调整像素大小

2023-11-21

使用 pygame,我创建了一个 20x20 像素窗口并添加了一个 2x2 像素矩形。 当我运行该程序时,窗口尺寸非常小,我几乎看不到矩形。如何在保持像素数量不变的情况下增加窗口大小,即增加像素大小?我知道这个类似的问题,但讨论了更复杂的情况。

import pygame
screen_width, screen_height = 20, 20
x, y = 10, 10
rect_width, rect_height = 2, 2
vel = 2
black = (0, 0, 0)
white = (255, 255, 255)
pygame.init()
win = pygame.display.set_mode((screen_width, screen_height))
run = True
while run:
    pygame.time.delay(100)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
    win.fill(black)
    pygame.draw.rect(win, white, (x, y, rect_width, rect_height))
    pygame.display.update()
pygame.quit()

不要直接在屏幕上绘制,而是在另一个屏幕上绘制Surface.

然后扩展新的Surface到屏幕的大小并将其传输到真实的屏幕表面。

这是一个例子:

import pygame
screen_width, screen_height = 20, 20

scaling_factor = 6

x, y = 10, 10
rect_width, rect_height = 2, 2
vel = 2
black = (0, 0, 0)
white = (255, 255, 255)
pygame.init()
win = pygame.display.set_mode((screen_width*scaling_factor, screen_height*scaling_factor))

screen = pygame.Surface((screen_width, screen_height))

run = True
while run:
    pygame.time.delay(100)
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    screen.fill(black)
    pygame.draw.rect(screen, white, (x, y, rect_width, rect_height))

    win.blit(pygame.transform.scale(screen, win.get_rect().size), (0, 0))
    pygame.display.update()
pygame.quit()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Pygame:重新调整像素大小 的相关文章

随机推荐

  • NoClassDefFoundError:org/slf4j/Logger

    我将 Log4J2 添加到我的应用程序中 我将所有 Log4J2 jar 文件复制到 LIB 目录并创建 Log4J2 xml 文件来支持它 我的代码已更新以导入必要的日志管理器和记录器 API 然后 我添加了静态最终记录器方法 并在代码中
  • 什么时候可以捕获 NullPointerException?

    有效的java建议我们不应该catch NullPointerException 总是对的吗 在很多抓捕的情况下NullPointerException 仅捕获正文调用printStackTrace 如果我没抓住NullPointerExc
  • Azure管道根据条件设置任务的显示名称

    在构建管道中 我有一个使用 powershell 脚本的工作 该脚本根据如下变量设置应用程序名称 applicationName If configuration eq Release Appname Else Appname Test W
  • Plotly:如何设置 x 轴上时间序列的主要刻度/网格线的值?

    背景 这个问题与以下问题相关 但不完全相同 Plotly 如何检索主要刻度线和网格线的值 类似的问题也被问过但没有得到解答绘图库 here 如何将主要刻度显示为每月的第一天 将次要刻度显示为每天 情节太棒了 也许唯一困扰我的是刻度线 网格线
  • Android 上的 Scala:java.lang.NoSuchMethodError:java.lang.String.isEmpty

    我在 Android 2 2 1 上遇到以下异常 java lang NoSuchMethodError java lang String isEmpty 我正在打电话text isEmpty来自斯卡拉 任何想法 如何解决这个问题 java
  • HashicorpVault - 客户端向 HTTPS 服务器发送 HTTP 请求 - 准备探针

    目前存在一个问题 即部署 Vault Helm 图表时就绪探针失败 Vault 正在工作 但每当我描述 Pod 时都会出现此错误 我如何让探测器使用 HTTPS 而不是 HTTP 如果有人知道如何解决这个问题我会很高兴慢慢失去理智 Kube
  • 同时使用多个Spring PropertyPlaceholderConfigurer

    我有两个项目 其中一个 服务 包括第二个 核心 我在核心项目中定义了下面的 PropertyPlaceholderConfigurer
  • 为什么 C 语言中移位的优先级低于加法和减法?

    我有时在进行位操作时发现这很不方便 尽管我现在不记得任何具体的例子 我还发现它在概念上令人困惑 因为移位基本上是乘法和除以 2 的幂 我发现在 C 中使用 因为这就是 C 语言的作者所决定的 使用括号以避免混淆
  • 如何将 Android 意图传递给除了我自己的应用程序之外的任何人?

    我有一个特定的意图 NDEF DISCOVERED 其中一些我无法正确处理 所以我想将它们重定向到 android 的默认 nfc 处理程序 所以我采取了意图 setComponent null 进而startActivity intent
  • 从 ASP.Net 页面运行批处理文件

    我试图通过 ASP Net 页面在服务器上运行批处理文件 这让我抓狂 当我运行下面的代码时 没有任何反应 我可以从一些日志语句中看到该代码运行 但我传递给该函数的 bat 文件从未运行 有人可以告诉我我做错了什么吗 public void
  • jQuery 无法在 AJAX 加载页面中工作

    我正在使用 jQuery 使用 ajax 假设 test html 通过 AJAX 加载页面 它是一个简单的 HTML 文档 带有一些按钮和单击它们时关联的动画 也使用 jQuery 当我直接加载页面时 关联的 click 属性工作正常 但
  • 用纯JS动画最大高度?

    我想要为 div 的高度设置动画 这通常在 CSS 中通过动画来完成max height财产 但是我需要在 JS 中执行此操作 div 填充了经常变化的动态内容 因此无法提前知道实际高度 这是一个jsfiddle https jsfiddl
  • 神经网络如何使用遗传算法和反向传播来玩游戏?

    我碰到YouTube 上这段关于遗传算法的有趣视频 正如您在视频中看到的 机器人学会了战斗 现在 我已经研究神经网络一段时间了 我想开始学习遗传算法 这在某种程度上将两者结合起来 如何结合遗传算法和神经网络来做到这一点 在这种情况下 人们如
  • Web API 和 ValidateAntiForgeryToken

    我们有一些现有的 MVC Web 服务 它们在网页中称为 AJAX 样式 这些服务利用 ValidateAntiForgeryToken 属性来帮助防止请求伪造 我们正在寻求将这些服务迁移到 Web API 但似乎没有等效的防伪功能 我错过
  • 注释会影响 Perl 性能吗?

    我正在优化一些经常运行的 Perl 代码 每个文件每天一次 注释会减慢 Perl 脚本的速度吗 我的实验倾向于不 use Benchmark timethese 20000000 comments gt b 1 comment 100 ti
  • 访问 Scala 中的注释值

    TL DR 基本上 我正在寻找 Java 的 Scala 等价物 MyAnnotation Thing getClass getAnnotations 0 尽管我可以很高兴地发现注释并根据其类型进行查询 但我似乎无法从scala refle
  • 使用 EBS 和 ELB 环境在 Node.js Express 应用程序中将 http 转发到 https

    我使用以下命令将所有 http 请求重定向到 https 请求 我可以从日志中看到标头 x forwarded proto 从未被填充且未定义 app get function req res next http docs aws amaz
  • db2 中更新表失败,SQLCODE:-668,SQLSTATE:57016,SQLERRMC:7;

    我正在使用 db2 9 5 我在表中创建了一个列 该列已成功创建 但我无法更新表列并出现以下错误 错误 脚本行 1 1 DB2 SQL 错误 SQLCODE 668 SQLSTATE 57016 SQLERRMC 7 DB2ADMIN XC
  • 使用多个帐户登录时,Google OAuth2 返回错误请求

    当我使用多个帐户登录谷歌时 我正在尝试授权自己https stackoverflow com users login 或任何其他使用 OAuth2 的网站 I get a Bad Request Error 400 当我处于隐身模式时不会发
  • Pygame:重新调整像素大小

    使用 pygame 我创建了一个 20x20 像素窗口并添加了一个 2x2 像素矩形 当我运行该程序时 窗口尺寸非常小 我几乎看不到矩形 如何在保持像素数量不变的情况下增加窗口大小 即增加像素大小 我知道这个类似的问题 但讨论了更复杂的情况