python模組學習第 0000 題

來源:互聯網
上載者:User

標籤:

將你的 QQ 頭像(或者微博頭像)右上方加上紅色的數字,類似於未讀資訊數量那種提示效果。 類似於圖中效果:

好可愛>%<!

題目來源:https://github.com/Yixiaohan/show-me-the-code,感謝@史江歌以及其他人,讓我找到了一個系統的學習python模組的好地方。

看到這個題目的第一印象是——額,難不成讓我找qq的API,然後在手機APP的壁紙上提示QQ訊息?好吧,我承認自己想複雜了,所以第二個想法就來了。因為博主最近學習比較雜亂無章,所以學習了tkinter以及opencv模組,後來發現大多數人使用PIL模組處理映像,好吧,由於上次映像指紋的識別用到了PIL模組以及Pillow模組,那麼就使用三種方法把圖片處理一下吧,代碼如下:

 1 # coding=utf-8 2 """ 3 使用tkinter 4 """ 5 __author__ = ‘wing1995‘ 6 from tkinter import * 7  8  9 def tk_image():10     root = Tk()11 12     w = Canvas(root, width=500, height=500)13     w.pack()14 15     photo = PhotoImage(file="C:/Users/wing1995/Desktop/classic.gif")16     w.create_image(0, 0, anchor=NW, image=photo)17     w.create_text(480, 60, text="9", fill="red", font=(‘Times‘, 40))18 19     mainloop()20 21 if __name__ == "__main__":22     tk_image()

使用tkinter模組的好處是,方便,但是由於沒有學到如何將製作的視窗中的畫布儲存為圖片的形式,所以只能直接把視窗給大家看啦:

第二張方法代碼:

 1 # coding=utf-8 2 __author__ = ‘wing1995‘ 3 """ 4 使用OpenCV 5 """ 6 import cv2 7  8 img = cv2.imread(‘classic.jpg‘) 9 10 font = cv2.FONT_HERSHEY_SIMPLEX11 cv2.putText(img, ‘9‘, (450, 100), font, 4, (0, 0, 255), 4)12 13 cv2.imshow(‘OpenCV‘, img)14 15 cv2.waitKey(0)16 cv2.destroyAllWindows()

同樣簡單明白,I love python!結果如下:

估計是我的網速問題,弄得幾張圖都碎掉了,以後有空研究一下這個問題,或許是像素的丟失,導致圖片的不完整,也就破圖了,不管怎樣還是覺得第一張圖片好看點,ok,上第三類方法代碼:

 1 # coding=utf-8 2 __author__ = ‘wing1995‘ 3 """ 4 使用PIL 5 """ 6 from PIL import Image, ImageDraw, ImageFont 7  8 sourceFilename = "classic.jpg" 9 avatar = Image.open(sourceFilename)  # 開啟圖片檔案10 drawAvatar = ImageDraw.Draw(avatar)  # 建立畫刷,用來將數字寫在圖片上11 12 myFont = ImageFont.truetype("C:/Windows/Fonts/simsunb.ttf", 60)  # 使用特定字型寫字13 14 drawAvatar.text([450, 60], text="9", fill=(255, 0, 0), font=myFont)15 16 avatar.show()17 avatar.save(‘classic_pil.jpg‘)

這一次,學會儲存圖片,話說opencv中儲存圖片也很簡單的不,只不過腦袋一時短路,忘記了,片:

不得不說,雖然PIL模組沒怎麼學習,但是上手仍然很簡單,而且很詳細,比如字型的設定,估計其他模組也有這樣的功能,只是自己沒發現而已,ok了,那麼第一個練習題就這樣了,有些代碼明顯需要改進,比如標誌“9”的座標應該放在同一個地方,便於比較之類的,大小也應該相同,代碼能夠函數化就好了,畢竟python處處是對象。明天繼續第二個,以及coursera的文法溫習,晚上玩一玩微博資料API吧。

額,話說,我扔下機房幾個電腦的軟體按照不管,自己自娛自樂,是不是有點偷懶?好餓,去上課了。

python模組學習第 0000 題

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.