Python中如何操作Surface对象绘制图形?

在Surface对象上绘制图形分为加载图片和绘制图片两个步骤。

(1)加载图片

加载图片即将图片读取到程序中,通过pygame中 image模块的load()方法可以向程序中加载图片,生成Surface对象。load()方法的声明如下:

load (filename) -> SurfaceimgSurf =pygame.image.load('bg.jpg')

以上示例从当前路径下加载名为“bg.jpg”的图片(分辨率为640像素×480像素),并使用变量 imgSurf 保存生成的Surface对象。

(2)绘制图片

aPygame中绘制图像即将一个Surface对象叠加在另一个Surface对象之上,这类以于现实生活中不同尺寸纸质图形的堆叠。通过Surface对象的blit()方法可以实现图像绘制,blit()方法的语法如下:

blit (source, dest, area=None, special flags = 0) -> Rect

下面对blit()方法的参数进行说明。

·参数source接收被绘制的Surface对象。

·参数dest接收一个表示位置的元组,该元组指定left和top两个值,left和top

别表示图片距离窗口左边和顶部的距离。该参数亦可接收一个表示矩形的元组left,top,width,height)(left、top表示矩形的位置,width、height表示矩形的宽和高),矩形的位置作为绘制的位置。

·参数area是一个可选参数,通过该参数可设置矩形区域。若设置的矩形区域小source所设置Surface对象的区域,那么仅绘制Surface对象的部分内容。

·参数special flags是标志位。

使用blit()方法将加载生成的imgSurf对象绘制到窗口WINSET中,具体示例如下:

WINSET.blit(imgSurf, (0, 0) )

以上示例代码将imgSurf绘制到了窗口的(0,0)位置,由于被绘制的图片与窗尺寸一致,这里的操作等同于为窗口绘制了背景图片。

将绘制图片的代码添加到程序7_pg_test.py中,具体如下所示:

以上示例从当前路径下加载名为“bg.jpg”的图片(分辨率为640像素×480像素),并使用变量 imgSurf 保存生成的Surface对象。

(2)绘制图片

aPygame中绘制图像即将一个Surface对象叠加在另一个Surface对象之上,这类以于现实生活中不同尺寸纸质图形的堆叠。通过Surface对象的blit()方法可以实现图像绘制,blit()方法的语法如下:

blit (source, dest, area=None, special flags = 0) -> Rect

下面对blit()方法的参数进行说明。

·参数source接收被绘制的Surface对象。

·参数dest接收一个表示位置的元组,该元组指定left和top两个值,left和top

别表示图片距离窗口左边和顶部的距离。该参数亦可接收一个表示矩形的元组left,top,width,height)(left、top表示矩形的位置,width、height表示矩形的宽和高),矩形的位置作为绘制的位置。

·参数area是一个可选参数,通过该参数可设置矩形区域。若设置的矩形区域小source所设置Surface对象的区域,那么仅绘制Surface对象的部分内容。

·参数special flags是标志位。

使用blit()方法将加载生成的imgSurf对象绘制到窗口WINSET中,具体示例如下:

WINSET.blit(imgSurf, (0, 0) )

以上示例代码将imgSurf绘制到了窗口的(0,0)位置,由于被绘制的图片与窗尺寸一致,这里的操作等同于为窗口绘制了背景图片。

将绘制图片的代码添加到程序7_pg_test.py中,具体如下所示:

...  WINSET = pygame.display.set_mode((WINWIDTH, WINHEIGHT))  WINSET.fIL1   (BGCOLOR)                                 #填充背景颜色  pygame.display.set_caption('数字推盘')     image = pygame,image.load('bg. jpg')      #加载图片  WINSET.blit(image, (0, 0))                #绘制图片  ......

文章来源于:王晴儿网页设计博客 欢迎分享交流,转载请注明出处

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/262311.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
黑马程序员黑马程序员订阅用户
上一篇 2023年5月6日 23:43
下一篇 2023年5月6日 23:43

相关推荐

  • 我来教你python线程join的用法。

    Python线程join的用法是在主线程中调用子线程对象的join()方法,等待子线程执行完毕。这样可以确保主线程在子线程完成后再继续执行。 在Python中,线程是并发编程的一种方式,它允许多个任务在同一程序中同时运行,…

    2024年7月12日
    01
  • python floor函数用法。

    Python中的floor()函数是一个内置的数学函数,用于返回小于或等于给定数字的最大整数,它是math模块的一部分,因此在使用之前需要先导入该模块。 使用方式 floor()函数的基本语法如下: import math math.floor(x) …

    2024年7月22日
    01
  • 我来教你python平均值函数。

    在Python中,计算平均值是一个常见的操作,通常用于数据分析和统计计算,Python提供了多种方法来计算平均值,包括使用内置函数、标准库以及第三方库,下面将详细介绍这些方法。 内置函数 Python的内置函数sum()和le…

    2024年7月25日
    01
  • 小编分享python唯一字符。

    Python是一种通用编程语言,具有简洁易读的语法和强大的功能。 在Python中,函数的唯一标识是其对象本身,每个函数都是一个对象,它们在内存中有一个唯一的地址,这个地址可以看作是函数的唯一标识,当我们需要引用…

    2024年7月7日
    00
  • 我来说说python建立字典。

    在Python中,字典是一种可变容器模型,且可存储任意类型对象,字典的每个键值对用冒号 : 分割,每对之间用逗号 , 分割,整个字典包括在花括号 {} 中。 创建字典 创建字典的基本语法如下: dict = {'key1': 'value1'…

    2024年7月26日
    08
  • 小编分享python基本的语法。

    Python 是一种高级编程语言,以其简洁明了的语法和强大的功能而闻名,它广泛应用于各种领域,如 Web 开发、数据分析、人工智能等,下面我们来详细了解一下 Python 的基本语法。 变量与数据类型 Python 中的变量不需…

    2024年7月19日
    00
  • 小编教你python中升序排列函数。

    在Python中,排序是一个常见的操作,无论是对数字、字符串还是其他可迭代对象,Python提供了多种方法来执行排序操作,包括使用内置函数、列表的sort方法和标准库中的sorted函数,本篇文章将重点讨论如何在Python中…

    2024年7月20日
    02
  • 小编分享python如何定义方法。

    Python定义方法名 在Python中,方法(也称为函数)是一段组织好的、可重复使用的代码,用于执行一个或多个相关操作,方法的定义通常包括以下几个部分:关键字def、方法名、参数列表和冒号,本文将详细介绍如何在Pyt…

    2024年7月28日
    02

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息