今年第一篇CSDN

一.前言

无需多言,今年第一篇教大家点实用的

二.利用Python制作对联

今年第一篇CSDN_第1张图片

import turtle
# 定义画春联及背景的方法
def drawChunLianBg(startX=0, startY=0, lenX=100, lenY=100):
    # 设置边框色和背景填充色
    turtle.color('Yellow', 'OrangeRed')
    # 抬笔,定位起点
    turtle.pu()
    turtle.goto(startX, startY)

    # 落笔,绘制春联矩形框,并填充颜色
    turtle.pd()
    turtle.begin_fill()
    for i in range(2):
        turtle.fd(lenX)
        turtle.rt(90)
        turtle.fd(lenY)
        turtle.rt(90)
    turtle.end_fill()
    # 结束抬笔
    turtle.pu()


# 定义写入一个文字的方法
def writeWord(target_word, startx, starty):
    # 基于坐标,打印单个汉字
    turtle.color("black", "black")
    # 抬笔定位
    turtle.pu()
    turtle.goto(startx, starty)
    turtle.pd()
    # 基于字体,打印汉字
    turtle.write(target_word, move=False, align='left', font=('汉仪程行简', 24, 'normal'))


# 定义写入多个文字的方法
def writeWords(target_words, startx, starty, lineNum=1):
    # 打印多个汉字,lineNum控制每行的汉字数,默认为1
    # 向右、向下的偏移量
    right_shift = 0
    down_shift = 0
    # 遍历打印汉字
    for word in target_words:
        writeWord(word, startx + right_shift * 45, starty - down_shift * 45)
        right_shift += 1
        # 判断是否要换行
        if right_shift % lineNum == 0:
            down_shift += 1
            right_shift = 0


drawChunLianBg(-160, 215, 60, 330)
writeWords(target_words="龙跃华夏迎新岁", startx=-145, starty=175)

drawChunLianBg(90, 215, 60, 330)
writeWords(target_words="福照神州庆丰登", startx=105, starty=175)

drawChunLianBg(-110, 280, 210, 60)
writeWords(target_words="福满乾坤", startx=-90, starty=230, lineNum=4)

turtle.pu()
turtle.goto(0, 0)
turtle.done()

三.祝您龙年快乐,别看CSDN内卷啦
 

你可能感兴趣的:(python)