当前位置: 首页 > news >正文

pygame绘制图片的2种方法

1、绘制图片(方法一)

image = pygame.image.load("image.png")

screen.blit(image, (350, 250)) #图片+坐标

绘制图片的完整代码:
import pygame import sys pygame.init() screen = pygame.display.set_mode((800,600)) pygame.display.set_caption("标题") image_a = pygame.image.load("icon.png") running = True while running: for event in pygame.event.get(): if event.type == pygame.QUIT: running = False screen.blit(image_a,(200,200)) pygame.display.flip() pygame.quit() sys.exit()

2、若无图片,创建一个红色方块作为替代以便运行

image = pygame.Surface((100, 100)) # 创建一个宽高为100*100的对象
image.fill((255, 0, 0)) #填充红色

3、调用convert()绘制图片的步骤(方法二)

① 调用.convert()将像素格式转换为与显示表面兼容的格式

image = pygame.image.load("image.png").convert()

get_rect()定位矩形

获取图片的矩形区域,用于定位:image_rect = image.get_rect()
居中显示图片:image_rect.center = (screen_width // 2, screen_height // 2)

③ 绘制图片

screen.blit(image, image_rect)

④ 绘画图片的完整代码
import pygame import sys import os # 初始化 Pygame pygame.init() # 设置窗口大小 screen_width = 800 screen_height = 600 screen = pygame.display.set_mode((screen_width, screen_height)) pygame.display.set_caption("Pygame 图片显示示例") # 尝试加载图片 image_path = "icon.png" if os.path.exists(image_path): try: # load() 返回一个 Surface 对象 # convert() 可以转换像素格式以加速 blit 操作 image = pygame.image.load(image_path).convert() except pygame.error as e: print(f"无法加载图片: {e}") # 创建备用表面 image = pygame.Surface((200, 200)) image.fill((0, 255, 0)) # 绿色方块 else: print(f"未找到 {image_path},使用备用彩色方块代替。") # 创建一个 200x200 的红色表面作为示例图片 image = pygame.Surface((200, 200)) image.fill((255, 0, 0)) # 获取图片的矩形区域,用于定位 image_rect = image.get_rect() # 将图片居中放置 image_rect.center = (screen_width // 2, screen_height // 2) # 游戏主循环 clock = pygame.time.Clock() running = True while running: # 1. 事件处理 for event in pygame.event.get(): if event.type == pygame.QUIT: running = False # 2. 绘制背景 # 填充白色背景,清除上一帧的内容 screen.fill((255, 255, 255)) # 3. 绘制图片 # blit 方法将图像表面绘制到屏幕表面上 # 第二个参数可以是坐标元组 (x, y) 或者 Rect 对象 screen.blit(image, image_rect) # 4. 更新显示 # flip() 更新整个屏幕内容 pygame.display.flip() # 控制帧率为 60 FPS clock.tick(60) # 退出 Pygame pygame.quit() sys.exit()
http://www.jsqmd.com/news/733144/

相关文章:

  • 除了发论文,参加ICAM 2024这类学术会议还能收获什么?给工程师的参会指南
  • 抖音视频下载终极指南:免费开源工具高效下载完整教程
  • 别只当它是个SDR!用PlutoSDR+IIO Oscilloscope,5分钟搭建你的第一个无线信号分析仪
  • 从零到一:手把手教你用Ansible搞定RHCE考试(附避坑指南)
  • 构建硬件钱包远程授权系统:基于策略引擎的区块链交易安全实践
  • 07 三数之和 实际为双指针
  • PyMacroRecord 1.4.3:解放双手的智能宏录制工具终极指南
  • python voila
  • PyTorch实战:手把手教你给U-Net加上CBAM注意力模块(附完整代码)
  • 在多轮对话应用中体验Taotoken服务的高可用与低延迟
  • 三步搞定显示器色彩过饱和:用novideo_srgb让广色域显示器显示准确色彩
  • 创维E900V22C电视盒子焕新指南:5步打造专业4K媒体中心
  • 独立开发者如何借助 Taotoken 的按 Token 计费模式低成本验证产品创意
  • Redis--发布订阅命令和Redis事务
  • C语言_指针_题写一个计算器
  • 保姆级教程:手把手教你给AMD锐龙笔记本降压超频(华硕/联想/机械革命等品牌通用)
  • ChatWoot部署后必做的5件事:从汉化到接入微信/邮件频道的完整配置指南
  • FPGA高速收发器选型与时钟规划:从GTPE2_COMMON错误理解Xilinx的QPLL/CPLL架构
  • 2025年RAG检索方式行业最佳实践
  • 国家中小学智慧教育平台电子课本下载终极指南:3分钟快速获取离线教材
  • JetBrains IDE试用期重置终极指南:简单高效的30天循环解决方案
  • 使用Hermes Agent与Taotoken为视频创意生成流程添加智能体辅助
  • 花半天对两份合同差异后,我找到了更省力的方案
  • OBS-VirtualCam终极指南:Windows虚拟摄像头快速安装与配置教程
  • 【研报A91】Harness Engineering研究报告:AI的操作系统层技术,系统级环境设计
  • Visual C++运行库AIO解决方案:一站式解决Windows系统依赖难题
  • Equalizer APO专业调音指南:3步打造Windows系统级完美音效
  • PKHeX自动合法性插件:革命性宝可梦数据合规解决方案,一键实现100%合法化
  • Steam库存管理革命:5个免费技巧让你每天节省3小时
  • 使用 curl 命令直接测试 Taotoken 的 Codex 模型接口响应