Pygame實現文字顯示在窗口中
使用Pygame顯示文字的步驟如圖1所示。
圖1 顯示文字的步驟
1 .Pygame的初始化
通過以下代碼實現Pygame的初始化。
import pygame pygame.init()
其中,第1行代碼的作用是在程序中導入pygame模塊;第2行代碼的作用是實現pygame的初始化。
2 .屏幕的創(chuàng)建
使用如下代碼實現屏幕的創(chuàng)建
screen_size = 500, 500 screen = pygame.display.set_mode(screen_size)
其中,第1行代碼定義了表示屏幕大小的變量screen_size,該變量的類型是元組;第2行代碼通過pygame的display模塊中的set_mode()函數創(chuàng)建屏幕。set_mode()函數的作用是初始化用來顯示的窗口或屏幕,該函數的返回值是Surface對象。
相關鏈接1 Surface,是在Pygame中定義的對象,是一塊矩形區(qū)域,用來表示要顯示的圖像;可以把Surface理解為畫布,在該畫布上面進行繪畫。
3 .字體的創(chuàng)建
通過pygame的font模塊來創(chuàng)建字體,如下代碼所示。
myfont = pygame.font.Font(None, 60)
其中,在Pygame的font模塊中定義的Font()函數的主要作用是從指定的文件中創(chuàng)建一個新的字體對象;其中第一個參數表示指定的字體文件,None表示使用默認字體;第二個參數表示字體的高度,單位是像素。該函數的返回值是Font類對象。
4 .字體的渲染
pygame的font模塊中沒有提供將文字直接顯示在Surface的方法,因為這種直接顯示的方法可能會導致顯示的閃爍??梢韵仍趦却嬷袆?chuàng)建一個新的Surface,將要顯示的文字渲染(render)到該Surface中,最后將這個新的Surface在屏幕中顯示。而以上步驟可以通過Font類的render()函數實現,代碼如下所示。
white = 255,255,255 textImage = myfont.render('Hello Pygame', True, white)
第1行代碼定義了字體的顏色,用變量white表示,該變量的類型是元組;第2行代碼通過Font類的對象myfont調用render()函數創(chuàng)建一個新的Surface,并將要顯示的文字渲染到Surface中,其中第一個參數表示要顯示的內容,第二個參數表示是否使用抗鋸齒效果,該參數是布爾類型,True表示使用抗鋸齒效果,使用該效果后,顯示字體的邊緣變得平滑;Flase表示不使用抗鋸齒效果,此時字體的邊緣會有鋸齒;第三個參數表示字體的顏色。
5 .文字的顯示
通過如下代碼在屏幕中顯示文字
blue = 0,0,255 screen.fill(blue) screen.blit(textImage, (100, 100)) pygame.display.update()
其中,第1~2行將屏幕的背景設置為藍色;第3行通過screen調用Surface類的blit()函數將“4 渲染字體”中創(chuàng)建的Surface也就是textImage,在屏幕中顯示,其中blit()函數的第一個參數表示要顯示的Surface,第二個參數顯示Surface的起點坐標;第4行代碼調用pygame的display模塊中的update()函數更新屏幕顯示,也就是將Surface在屏幕中顯示出來。
通過以上代碼顯示的效果如圖2所示。
圖2 顯示效果
到此這篇關于Pygame實現文字顯示在窗口中的文章就介紹到這了,更多相關Pygame顯示文字內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python使用pip安裝報錯:is not a supported wheel on this platform的解決
這篇文章主要介紹了Python使用pip安裝報錯:is not a supported wheel on this platform的解決方法,結合實例形式分析了在安裝版本正確的情況下pip安裝報錯的原因與相應的解決方法,需要的朋友可以參考下2018-01-01