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

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

(1)加载图片

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

load (filename) -> Surface imgSurf =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)) #绘制图片   … …

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:Python中如何操作Surface对象绘制图形? https://www.dachanpin.com/a/cyfx/10915.html

(1)
上一篇 2023-05-12 02:32:58
下一篇 2023-05-12 02:33:58

相关推荐

  • 上海:互联网创业二十年

    机器之心原创 作者:微胖 到 2020 年,上海要实现成为国家人工智能发展高地的总体目标,没有无源之水,从过往近二十年互联网创业历史中或许可窥出一些未来。 在上海,京东快递员有时一天要送出 100 多个包裹。他们不停穿梭在摩天大楼、河滨,弄堂之间。有的老房子已被改造成 SNH48 剧场,有的或许正驻扎着一群创业者。 这样的蓝领在京东约为 11 万,白领约 1…

    2023-05-16
    136
  • 乌鲁木齐培训创业培训师

    据悉,此次2016年SIYB创业培训师资班开办,是为认真贯彻落实“两创一微”工作座谈会精神,进一步强化乌鲁木齐创业培训师资队伍。(完) 记者当日从市人力资源和社会保障局了解到,截至8月6日,他们将在这里全封闭学习如何讲解演绎SYB培训游戏模块、创业培训授课技能技巧、SYB课程的重点难点问题等。培训结束经考核合格后,将由人力资源和社会保障部中国就业培训技术指导…

    创业分享 2023-05-30
    84
  • 你所担心的资本寒冬 或许只因创业项目不靠谱

      创业项目不要to VC   对于做早期投资的投资者而言,爆点或许并不是他们关注的要领。赵剑海说,他们现在投的是比较早期的项目,一定要在爆点还没出现前就进去投资。对于早期投资者而言,很难追逐一个爆点,一是追不上,二是无法做没有准备好的事情。由于技术的迅猛发展,很多有商业头脑加上技术结合的人,能够产生很多项目,因此,企业家的管理和带领团队的能力的结合,是他们…

    创业分享 2023-05-30
    94
  • 全国大众创业万众创新活动周开幕

      本报合肥9月16日电  (记者李俊杰、徐靖)近日,2022年全国大众创业万众创新活动周在安徽合肥启幕。本届活动周将从9月15日持续到21日,以“创新增动能,创业促就业”为主题,采用线上线下相结合的方式,主会场设在安徽省合肥市,在全国各省、自治区、直辖市及计划单列市、新疆生产建设兵团同步开展。   活动周通过主会场活动、部委活动、地方活…

    创业分享 2023-05-10
    54
  • 黄冈市人民政府 黄冈要闻 我市召开促进高校毕业生就业创业新闻发

    9月9日,我市召开促进高校毕业生就业创业新闻发布会。市人社局、市教育局、市住建局、市财政局相关负责人,解读我市促进高校毕业生就业创业的若干措施,交流促进高校毕业生就业创业工作成效,并回答记者提问。 据介绍,我市近期出台《关于实施“才聚荆楚·梦圆黄冈”工程促进高校毕业生就业创业若干措施的通知》,围绕高校毕业生落户、安居、就业、创业、服务保障等方面提出了25条措…

    创业分享 2023-05-10
    103

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

工作时间:周一至周五,9:30-16:30,节假日休息