溫馨提示×

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

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

Python如何生成個(gè)性簽名圖片并獲取GUI

發(fā)布時(shí)間:2021-05-11 11:00:46 來源:億速云 閱讀:198 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)Python如何生成個(gè)性簽名圖片并獲取GUI,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

Python的優(yōu)點(diǎn)有哪些

1、簡(jiǎn)單易用,與C/C++、Java、C# 等傳統(tǒng)語言相比,Python對(duì)代碼格式的要求沒有那么嚴(yán)格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺(tái)上使用;3、Python面向?qū)ο螅軌蛑С置嫦蜻^程編程,也支持面向?qū)ο缶幊蹋?、Python是一種解釋性語言,Python寫的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序;5、Python功能強(qiáng)大,擁有的模塊眾多,基本能夠?qū)崿F(xiàn)所有的常見功能。

這篇文章主要介紹了Python生成個(gè)性簽名圖片獲取GUI過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

先來看看程序運(yùn)行的樣子:

Python如何生成個(gè)性簽名圖片并獲取GUI

Python如何生成個(gè)性簽名圖片并獲取GUI

Python如何生成個(gè)性簽名圖片并獲取GUI

所以,程序的原理是 從一個(gè)url = ‘

http://www.uustv.com/

'中爬取個(gè)性簽名的圖片。

在該網(wǎng)頁中審查該圖片的元素,然后找到該圖片的imgur

使用正則表達(dá)式直接定位

程序的后面使用到了tkinter的 GUI簡(jiǎn)易界面,用于和用戶的簡(jiǎn)單交互,非常方便。

整個(gè)程序的完整代碼如下: (有任何問題歡迎留言討論)

import tkinter as tk
from tkinter import messagebox
import requests
import re
from PIL import Image,ImageTk


def design():
  name=et.get()
 # print(name)
  name=name.strip()
  if name == '':
    messagebox.showinfo('提示',message='請(qǐng)輸入姓名')
  else:
    #獲取簽名圖片
    data={
      'word': name,
      'sizes': 60,
      'fonts': 'haku.ttf',   # jfcs.ttf個(gè)性簽 zql.ttf 商務(wù)簽  qmt.ttf連筆簽  bzcs.ttf瀟灑簽  lfc.ttf草體簽  haku.ttf合同簽   yqk.ttf可愛簽
      'fontcolor': '# 000000'
    }
    url='http://www.uustv.com/'

    result=requests.post(url,data)
    # print(result) Response [200]

    #設(shè)置編碼
    result.encoding='utf-8'
    html=result.text
    #print(html) 網(wǎng)頁源代碼 b

    #正則表達(dá)式
    reg=r'<div class="tu"><img src="(.*?)"/></div>'
    imgpath=re.findall(reg,html)
    imgurl=url+imgpath[0]
    # print(imgurl)

    #保存圖片
    response=requests.get(imgurl).content
    with open('{}.gif'.format(name),'wb')as f:
      f.write(response)

    #顯示圖片
    bm=ImageTk.PhotoImage(file='{}.gif'.format(name))

    label2=tk.Label(window,image=bm)
    label2.bm=bm
    label2.grid(row=2,columnspan=2)

#設(shè)置窗口
window=tk.Tk()
window.geometry('600x300+200+200')
window.title('簽名設(shè)計(jì)')
#設(shè)置控件
label=tk.Label(window,text='姓名:',font=('宋體',20),fg='red')
label.grid()

et=tk.Entry(window,font=('宋體',20))
et.grid(row=0,column=1)

bt=tk.Button(window,text='設(shè)計(jì)簽名',font=('宋體',15),width=10,height=2,command=design)
bt.grid(row=1,column=1)

window.mainloop()

值得注意的是,在headers里有不同的簽名字體可以設(shè)置,但是同一名字文件會(huì)覆蓋。

關(guān)于“Python如何生成個(gè)性簽名圖片并獲取GUI”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

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

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

AI