溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python+Turtle怎么制作獨特的表白圖

發(fā)布時間:2022-04-25 10:04:13 來源:億速云 閱讀:197 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“Python+Turtle怎么制作獨特的表白圖”,在日常操作中,相信很多人在Python+Turtle怎么制作獨特的表白圖問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python+Turtle怎么制作獨特的表白圖”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

開始之前先來看看效果圖,在控制臺輸入相應(yīng)的參數(shù)設(shè)置即可生成自己獨特的表白圖。

Python+Turtle怎么制作獨特的表白圖

想要在圖片上書寫什么樣的信息,就看你的發(fā)揮了,哈哈哈~

Python+Turtle怎么制作獨特的表白圖

import turtle as tle  # 小烏龜繪圖庫

使用turtle小烏龜畫圖之前,先進(jìn)行全局參數(shù)初始化的設(shè)置,并使得全局初始化函global_init可以動態(tài)傳參供后面的方便調(diào)用。

def global_init(w=900, h=600, psize=15, sp=0):
    '''
    全局畫筆屬性初始化函數(shù)
    :param w: 畫布寬度
    :param h: 畫布高度
    :param psize: 畫筆尺寸
    :param sp: 繪畫速度
    :return:
    '''
    tle.setup(width=w, height=h)
    tle.color('red', 'pink')
    tle.pensize(psize)
    tle.speed(sp)

設(shè)置完上面的屬性之后,就可以正式開始繪圖了,這里為了使代碼結(jié)構(gòu)清晰還是創(chuàng)建一個表白紅心的函數(shù)draw_red_heart。

def draw_red_heart(confession='我愛你', confession_h=30,
                   sign='來自遠(yuǎn)方的仰慕者', sign_w=20, sign_h=25):
    '''
    繪制表白紅心
    :param confession: 表白語句
    :param confession_h: 表白語句尺寸大小
    :param sign: 簽名
    :param sign_w: 簽名寬度
    :param sign_h: 簽名高度
    :return:
    '''
    tle.up()
    tle.hideturtle()
    tle.goto(0, -180)
    tle.showturtle()
    tle.down()
    tle.speed(500)
    tle.begin_fill()
    tle.left(140)
    tle.forward(224)
    for n in range(200):
        tle.right(1)
        tle.forward(2)
    tle.left(120)
    for n in range(200):
        tle.right(1)
        tle.forward(2)
    tle.forward(224)
    tle.end_fill()
    tle.pensize(12)
    tle.up()
    tle.hideturtle()
    tle.goto(0, -20)
    tle.showturtle()
    tle.color('#CD5C5C', 'pink')
    tle.write(confession, font=('gungsuh', confession_h), align="center")
    tle.up()
    tle.hideturtle()
    tle.color('black', 'pink')
    tle.goto(180, -180)
    tle.showturtle()
    tle.write(sign, font=(sign_w, sign_h), align="center", move=True)

編寫主體業(yè)務(wù)函數(shù)main,調(diào)用整個繪畫程序運行。

def main():
    print('按要求輸入下面的繪圖參數(shù)...')
    width = int(input('請輸入畫布寬度:\n'))
    height = int(input('請輸入畫布高度:\n'))
    psize = int(input('請輸入畫筆尺寸:\n'))
    speed = int(input('請輸入畫筆速度:\n'))
    confession = input('請輸入表白語句:\n')
    confession_h = int(input('請輸入表白語句字體大小:\n'))
    sign = input('請輸入簽名:\n')
    sign_w = int(input('請輸入簽名寬度:\n'))
    sign_h = int(input('請輸入簽名高度:\n'))
    print('參數(shù)錄入完成,開始繪圖...')
    global_init(w=width, h=height, psize=psize, sp=speed)
    draw_red_heart(confession=confession, confession_h=confession_h,
                   sign=sign, sign_w=sign_w, sign_h=sign_h)
    print('繪圖完成!')
    # 保存eps格式的繪圖結(jié)果
    eps = tle.getscreen()
    eps.getcanvas().postscript(file=r"./表白.eps")

    # 保存JPG格式的圖片
    from PIL import Image
    im = Image.open("./表白.eps")
    im.save("表白.jpg")
    print('繪圖保存成功,默認(rèn)在當(dāng)前路徑!')

    # 繪圖完成后保持窗口不被關(guān)閉
    screen = tle.Screen()
    screen.exitonclick()

注意:在將表白.eps文件保存為JPG格式的文件時會拋出如下的錯誤。

raise OSError("Unable to locate Ghostscript on paths")

這個時候不要著急,當(dāng)然有解決的辦法的,到ghostscript官網(wǎng)下載自己需要的組件就OK了。

Python+Turtle怎么制作獨特的表白圖

然后,將下載好的gs9561w64.exe可執(zhí)行應(yīng)用安裝就成了。

Python+Turtle怎么制作獨特的表白圖

記得安裝完成后,路徑都是在這個地方,不需要也可以隨時卸載。

Python+Turtle怎么制作獨特的表白圖

最后,將該路徑加入到環(huán)境變量的path屬性中就大功告成啦,重啟一下開發(fā)工具這樣環(huán)境變量就會真正的生效了。

Python+Turtle怎么制作獨特的表白圖

再次提醒,記得配置完環(huán)境變量后重啟IDE喔!

main()

到此,關(guān)于“Python+Turtle怎么制作獨特的表白圖”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI