【閱讀全文】
開始之前先來看看效果圖,在控制臺輸入相應的引數設定即可生成自己獨特的表白圖,

想要在圖片上書寫什么樣的資訊,就看你的發揮了,哈哈哈~

import turtle as tle # 小烏龜繪圖庫
使用turtle小烏龜畫圖之前,先進行全域引數初始化的設定,并使得全域初始化函global_init可以動態傳參供后面的方便呼叫,
def global_init(w=900, h=600, psize=15, sp=0):
'''
全域畫筆屬性初始化函式
: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)
設定完上面的屬性之后,就可以正式開始繪圖了,這里為了使代碼結構清晰還是創建一個表白紅心的函式draw_red_heart,
def draw_red_heart(confession='我愛你', confession_h=30,
sign='來自遠方的仰慕者', 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)
撰寫主體業務函式main,呼叫整個繪畫程式運行,
def main():
print('按要求輸入下面的繪圖引數...')
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('引數錄入完成,開始繪圖...')
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格式的繪圖結果
eps = tle.getscreen()
eps.getcanvas().postscript(file=r"./表白.eps")
# 保存JPG格式的圖片
from PIL import Image
im = Image.open("./表白.eps")
im.save("表白.jpg")
print('繪圖保存成功,默認在當前路徑!')
# 繪圖完成后保持視窗不被關閉
screen = tle.Screen()
screen.exitonclick()
注意:在將表白.eps檔案保存為JPG格式的檔案時會拋出如下的錯誤,
raise OSError("Unable to locate Ghostscript on paths")
這個時候不要著急,當然有解決的辦法的,到ghostscript官網下載自己需要的組件就OK了,
https://ghostscript.com/releases/gsdnld.html

然后,將下載好的gs9561w64.exe可執行應用安裝就成了,

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

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

再次提醒,記得配置完環境變數后重啟IDE喔!
main()

【往期精彩】
Python 自動清理電腦垃圾檔案,一鍵啟動即可...
如何實作根據照片獲取地理位置及如何防御照片泄漏地理位置!
又是櫻花盛開的季節,使用小烏龜來畫一顆櫻花樹吧!
Python 讀取PDF檔案為文本字符并轉換為音頻...
python 獲取最新房價資訊-以北京房價為例
辦公自動化:Image圖片轉換成PDF檔案存盤...
python做一個微型美顏圖片處理器,十行代碼即可完成...
用python做一個文本翻譯器,自動將中文翻譯成英文,超方便的!
小王,給這2000個客戶發一下節日祝福的郵件...
python 一行命令開啟網路間的檔案共享...
PyQt5 批量洗掉 Excel 重復資料,多個檔案、自定義重復項一鍵洗掉...
再見XShell,這款國人開源的終端命令列工具更nice!
歡迎關注作者公眾號【Python 集中營】,專注于后端編程,每天更新技術干貨,不定時分享各類資料!轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/463469.html
標籤:其他
