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
Python开发:数字推盘游戏的动态效果绘制
下一篇 2023-05-12 02:33:58

相关推荐

  • 从媒体人到打不死的创业者 风客怎么玩转世界杯

    资料图   稿件来源:风客会   刘峰   他曾经是著名体育媒体人,先后效力于新华社、南方体育、足球报和新浪体育,几年前与小伙伴一起投身创业大潮。几年后,他们的风客会并没有像无数的体育创业公司一样雪花般倒下,反而变成了屡折不弯打不死的小强。他是资深的足球媒体人刘峰,也是风客会的联合创始人。   Q   A   &   问   当时创业的初衷是什么? …

    2023-05-18
  • 南京适合年轻人创业项目如何选择5到10万创业项目

    南京适合年轻人创业项目项目方是否经营过别的企业,进行过别的项目招商,结果如何。一些骗子习惯于打一枪换一个地方,已经形成一种经营”模式”,如上述几个湖北骗子,此前就曾经营过几个别的项目,这都属于公开行为,一定会留下蛛丝马迹,只要投资者够细心,就不难看出破绽;南京适合年轻人创业项目一些项目方故意夸大其词,做虚假广告,虚报店面数量、营业额等…

    创业分享 2023-05-23
  • 让创业失败的“失信被执行人”寸步难行,那债务他怎么去履行?

    今天就和大家分享交流这些,感谢阅读。 特别声明:本文为网易自媒体平台“网易号”作者上传并发布,仅代表该作者观点。网易仅提供信息发布平台。 放开创业者手脚 协助企业启动 总之,目前社会出现的大量“失信被执行人”,除了一些社会渣子,一些真正的无赖,其他大部分都是创业失败者。我们解决这些问题难度并不大,为什么不出台政策解决?为什么没有人去处理?就是不想为,不作为,…

    2023-05-12
  • “名校人才直通车”活动结束仅数日香港创新创业机构回访高新区

    “珠海环境很适合创业,气氛也比较活跃,优美的城市环境更容易开拓思维,(创业团队)可以想多一点新的‘点子’。相比其他城市的创业园区来说,珠海的产业园区更注重工作和生活的平衡点,对创业企业会有更好的发展。”香港乐燃生命有限公司主要负责帮助香港中小企业对接行业资源、政府资助的傅玉玲博士介绍,通过这次活动,想进一步了解香港创业者在珠海的进入门槛,帮助他们找到更合适的…

    创业分享 2023-05-18
  • 震荡分化 创业板进入“漂亮50”时代

    震荡分化 创业板进入“漂亮50”时代 时间:2018年04月20日 10:00:00 中财网   前一日还独领风骚,领跑沪深主板,昨日便跌下神坛,独收绿盘。对于以创业板为代表的科技股,近几日市场显露明显态度分歧。   业内人士对此表示,结构性格局下,业绩始终是股价的坚实支撑。新经济中期主线不变,以及CDR和“独角兽”上市带来科技行业价值重估趋势下,…

    创业分享 2023-05-18

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

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