python tkinter画福字

目录

前言

一、创建画布

二、绘制福字的外框

三、绘制“福”字


前言

这不今天是除夕了,祝大家除夕快乐哈!今天我来教大家一个有趣的东西,用Tkinter(有turtle我就是不用,就用Canvas,就是玩哎嘿)画福字!听起来挺应景的哈


一、创建画布

我们都知道Tkinter有一个类叫做Canvas,画布类,在这里就不多说了,有兴趣的小伙伴可以去看看我的另外一篇文章,链接给你们摊在这:

Python Tkinter Canvas的使用

首先,我们为了更方便一点,就把画布定为200x200吧,300x300有点大,100x100有点小

调整Canvas大小可以用**kw中的width和height,好,代码如下:

from tkinter import *
master=Tk()
canvas=Canvas(master,bg='white',width=200,height=200)
canvas.pack()

这样就可以生成一个如下的白色画布窗口:

 python tkinter画福字_第1张图片

二、绘制福字的外框

之所众周,Canvas.create_rectangle可以绘制矩形,但是……

你们有没有发现,福字的外框是个菱形??

 那是不是只能凉拌了?

Canvas.create_polygon:你瞧不起我?

没错,Canvas.create_polygon应该是最好的办法了,绘制多边形

经过我的测算,最符合(好)比例(看)的菱形应该是这个坐标:

25,100,100,25,175,100,100,175

因为菱形有四个角,所以这串数代表x1,y1,x2,y2,x3,y3,x4,y4

我的Python Tkinter Canvas如何使用一文中,有一个表格:

python tkinter画福字_第2张图片

这其中有两个我们正好能用到!他们就是fill和outline

首先福字我们要选暖色系吧,一说到暖色系,你就会想到红色,黄色,橙色对八?那我们就选黄色作为outline,红色作为fill吧,代码如下:

from tkinter import *
master=Tk()
canvas=Canvas(master,bg='white',width=200,height=200)
canvas.pack()
canvas.create_polygon(25,100,100,25,175,100,100,175,outline='yellow',fill='red')

这样就可以生成如下的画布:

 python tkinter画福字_第3张图片

很好,你已经要成功了

三、绘制“福”字

Canvas类中有一个方法专门用来绘制文字,那就是——Canvas.create_text!

我们要绘制“福”字,text当然是'福'了啊

然后这个地方我试过outline会报错,fill不会,我们就用fill填充黄色吧!

再就是字体大小的问题,字体用楷体,大小的话我试过用70刚刚好

然后是坐标的问题,如果是87.5,87.5的话会超出去一点,用100,100刚刚好

最后,代码如下:

from tkinter import *
master=Tk()
canvas=Canvas(master,bg='white',width=200,height=200)
canvas.pack()
canvas.create_polygon(25,100,100,25,175,100,100,175,outline='yellow',fill='red')
canvas.create_text(100,100,text='福',font=('楷体',70),fill='yellow')

这样就会画一个福字辣:

 python tkinter画福字_第4张图片


总结

这就是这篇文章要讲的内容辣,观众们可以洗洗睡了~

最后再次祝大家除夕快乐!

非喜勿喷!!

你可能感兴趣的:(Tkinter的那些事,python,ui)