【python】如何用canvas在自己设计的软件上作画
创始人
2024-06-01 02:18:15
0

在这里插入图片描述

在这里插入图片描述

文章目录

  • 前言
  • Canvas组件
  • Canvas画布界面
    • 画长方体
    • 画多边形
  • PhotoImage组件
    • 展示gif的图片
    • 展示gif法2
  • 总结

前言

python学习之路任重而道远,要想学完说容易也容易,说难也难。
很多人说python最好学了,但扪心自问,你会用python做什么了?
刚开始在大学学习c语言,写一个飞行棋的小游戏,用dos界面来做,真是出力不讨好。
地图要自己一点一点画出来,就像这样:

================
|				|
|				|
|===============

从此讨厌编程,不想继续学下去。每次作业应付。
算法考试,数据结构考试随便背代码,只求通过。
最后呢?我学会变成了吗?只能对一些概念侃侃而谈,但真的会几行代码,能写出实用工具吗?
答案变得模糊。
所以我们要从现在开始,学好python,不要再糊弄下去!!!

Canvas组件

Canas组件是一种基于Java Swing的图形用户界面(GUI)组件库,它提供了一系列的组件,如按钮、文本框、标签等,可以帮助开发人员快速构建GUI应用程序。Canas组件库还支持多种主题和皮肤,可以让应用程序的界面更加美观和易于使用。

让窗体带有五彩巴兰的图片、颜色、更加奇特的形状

美: [ˈkænvəs]
英: ['kænvəs]
n. 帆布;画布;油画
网络 粗帆布;油画布;帆布鞋

Canvas画布界面

画长方体

在这里插入图片描述

# coding=gbk
import os
from tkinter import *
t1=Tk()
c1=Canvas(t1,width=200,height=200)
c1.pack()img=PhotoImage(file=os.path.abspath(os.path.curdir)+'\\xxzz.gif')
c1.create_image((95,70),image=img)
c1.create_rectangle(50,20,150,80,fill="Blue")mainloop()

画多边形

在这里插入图片描述

# coding=gbk
import os
from tkinter import *
t1=Tk()
c1=Canvas(t1,width=200,height=200)
c1.pack()img=PhotoImage(file=os.path.abspath(os.path.curdir)+'\\xxzz.gif')
c1.create_image((95,70),image=img)
c1.create_rectangle(50,20,150,80,fill="Blue")
c1.create_rectangle(65,35,135,65,fill="yellow")
c1.create_line(0,21,50,21,fill="Black",width=3)
c1.create_line(0,40,50,21,fill="#476042",width=3)c1.create_text(100,50,text="三酷猫")
c1.create_polygon(111,140,151,100,190,100,151,180,fill="Purple",tags="polygon")
t1=c1.create_text(20,6,text="起来看")
c1.delete(t1)mainloop()

PhotoImage组件

可以用于Python的图形用户界面(GUI)编程,用于显示图片。你可以使用Tkinter库中的PhotoImage类来创建一个图片对象,并将其放置在窗口中。这个组件支持多种图片格式,例如GIF、JPEG、PNG等。

展示gif的图片

在这里插入图片描述

# coding=gbk
from tkinter import *
import os
filename=os.path.abspath(os.path.curdir)+'\\xxzz.gif'
print(filename)
root=Tk()
img=PhotoImage(file=filename)# 创建gif对象实例
label=Label(root,text="wudi",compound='center',image=img,fg="red")
label.pack()
root.mainloop()

展示gif法2

可以使用Python中的Pillow库来展示gif图片,具体可以使用以下代码:

from PIL import Image# 打开gif图片im = Image.open('example.gif')try:# 循环展示gif图片的每一帧while True:im.seek(im.tell() + 1)im.show()
except EOFError:pass
这段代码可以打开名为example.gif的gif图片,并循环展示其中的每一帧。

总结

使用HTML5的Canvas API来在自己设计的软件上作画。首先需要在HTML文件中创建一个canvas元素,并设置它的宽度和高度。然后使用JavaScript代码获取canvas元素的上下文,通过调用上下文的绘图方法来绘制图形。例如,可以使用上下文的fillRect方法来绘制一个矩形。还可以使用其他方法来绘制线条、圆形、文本等。需要注意的是,Canvas API的使用需要一定的编程基础。

在这里插入图片描述

相关内容

热门资讯

求经典台词和经典旁白 求经典台词和经典旁白谁有霹雳布袋戏里的经典对白和经典旁白啊?朋友,你尝过失去的滋味吗? 很多人在即将...
小王子第二章主要内容概括 小王子第二章主要内容概括小王子第二章主要内容概括小王子第二章主要内容概括
爱情睡醒了第15集里刘小贝和项... 爱情睡醒了第15集里刘小贝和项天骐跳舞时唱的那首歌是什么谢谢开始找舞伴的时候是林俊杰的《背对背拥抱》...
世界是什么?世界是什么概念?可... 世界是什么?世界是什么概念?可以干什么?物质的和意识的 除了我们生活的地方 比方说山 河 公路 ...
全职猎人中小杰和奇牙拿一集被抓 全职猎人中小杰和奇牙拿一集被抓动画片是第五十九集,五十八集被发现,五十九被带回基地,六十逃走
“不周山”意思是什么 “不周山”意思是什么快快快快......一座山,神话里被共工撞倒了。
《揭秘》一元一分15张跑得快群... 一元一分麻将群加群主微【ab120590】【tj525555】 【mj120590】等风也等你。喜欢...
玩家必看手机正规红中麻将群@2... 好运连连,全网推荐:(ab120590)(mj120590)【tj525555】-Q号:(QQ443...
始作俑者15张跑的快群@24小... 微信一元麻将群群主微【ab120590】 【tj525555】【mj120590】一元一分群内结算,...
《重大通知》24小时一元红中麻... 加V【ab120590】【tj525555】【mj120590】红中癞子、跑得快,等等,加不上微信就...
盘点一下正规一块红中麻将群@2... 一元一分麻将群加群主微:微【ab120590】 【mj120590】【tj525555】喜欢手机上打...
(免押金)上下分一元一分麻将群... 微【ab120590】 【mj120590】【tj525555】专业麻将群三年房费全网最低,APP苹...
[解读]正规红中麻将跑的快@群... 微信一元麻将群群主微【ab120590】 【tj525555】【mj120590】一元一分群内结算,...
《普及一下》全天24小时红中... 微【ab120590】 【mj120590】【tj525555】专业麻将群三年房费全网最低,APP苹...
优酷视频一元一分正规红中麻将... 好运连连,全网推荐:(ab120590)(mj120590)【tj525555】-Q号:(QQ443...
《火爆》加入附近红中麻将群@(... 群主微【ab120590】 【mj120590】【tj525555】免带押进群,群内跑包包赔支持验证...
《字节跳动》哪里有一元一分红中... 1.进群方式-[ab120590]或者《mj120590》【tj525555】--QQ(QQ4434...
全网普及红中癞子麻将群@202... 好运连连,全网推荐:(ab120590)(mj120590)【tj525555】-Q号:(QQ443...
「独家解读」一元一分麻将群哪里... 1.进群方式《ab120590》或者《mj120590》《tj525555》--QQ(4434063...
通知24小时不熄火跑的快群@2... 1.进群方式《ab120590》或者《mj120590》《tj525555》--QQ(4434063...