真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Pythonpygame繪制文字制作滾動(dòng)文字過程解析-創(chuàng)新互聯(lián)

這篇文章主要介紹了Python pygame繪制文字制作滾動(dòng)文字過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

員工經(jīng)過長期磨合與沉淀,具備了協(xié)作精神,得以通過團(tuán)隊(duì)的力量開發(fā)出優(yōu)質(zhì)的產(chǎn)品。創(chuàng)新互聯(lián)堅(jiān)持“專注、創(chuàng)新、易用”的產(chǎn)品理念,因?yàn)椤皩W⑺詫I(yè)、創(chuàng)新互聯(lián)網(wǎng)站所以易用所以簡單”。公司專注于為企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、微信公眾號(hào)開發(fā)、電商網(wǎng)站開發(fā),成都微信小程序,軟件按需求定制開發(fā)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。

字體常用的不是很多,在pygame中大多用于提示文字,或者記錄分?jǐn)?shù)等事件。
字體繪制基本分為以下幾個(gè)步驟:

  • 初始化字體模塊
    • pygame.init()
  • 創(chuàng)建一個(gè)字體對象
    • 可以從文件或者系統(tǒng)內(nèi)字體選取
      • pygame.font.SysFont('幼圓',50)
  • 繪制文本對象。
    • a.render("測試字體",True,(255,0,0),(0,0,0))
  • 屏幕繪制字體
    • screen.blit(text,[jx.x,jx.y])

繪制字體是用的表面中blit函數(shù)來繪制圖像:

blit(source,dest,area = None,special_flags = 0) - > Rect

在此Surface上繪制源Surface。可以使用dest參數(shù)定位繪圖。Dest可以是表示源左上角的坐標(biāo)對。Rect也可以作為目標(biāo)傳遞,矩形的topleft角將用作blit的位置。目標(biāo)矩形的大小不會(huì)影響blit。

也可以傳遞可選的區(qū)域矩形。這表示要繪制的源Surface的較小部分。

也就是我們需要繪制的元素,需要繪制的位置輸入進(jìn)去,可以接受矩形區(qū)域的位置參數(shù)。

這里還演示了獲取文本寬高,讓文本在屏幕居中滾動(dòng)的效果。

import pygame
import pprint

def main():
  # 初始化pygame
  pygame.init()
  # 初始化字體模塊
  pygame.font.init()
  # 如果字體模塊已初始化,則為true
  print('是否初始化',pygame.font.get_init())
  # 獲取默認(rèn)字體的文件名
  print('默認(rèn)字體名',pygame.font.get_default_font())
  # 獲取所有可用的字體
  pprint.pprint(pygame.font.get_fonts())
  # 在系統(tǒng)上找到特定的字體
  print('查找字體',pygame.font.match_font('arial'))
  #從系統(tǒng)字體創(chuàng)建一個(gè)Font對象
  # (名稱,大小,粗體=假,斜體=假) - >字體
  a = pygame.font.SysFont('幼圓',50)

  # 從文件或?qū)ο罄L制文本
  # pygame.font.Font('文件或?qū)ο?,大小)
  
  # 在新Surface上繪制文本
  # 顯示內(nèi)容、是否消除鋸齒、字體顏色、背景顏色
  text = a.render("gisoracle",True,(255,0,0),(0,0,0))

  # 取消初始化字體模塊
  # pygame.font.quit()
  # 設(shè)置屏幕
  screen = pygame.display.set_mode((500,100))
  # 設(shè)置矩形區(qū)域
  ztx, zty, ztw, zth = text.get_rect()
  # 繪制顯示文字的矩形區(qū)域
  jx = pygame.Rect(500,50-zth/2,ztw, zth) # 初始位置設(shè)置屏幕右邊,并居住顯示,2/1屏幕的高度 - 2/1字體的高度 向上移動(dòng)是減
  # 設(shè)置游戲時(shí)鐘
  clock = pygame.time.Clock()
  while True:
    # 文字滾動(dòng)的頻率
    clock.tick(30)
    # 重繪屏幕
    screen.fill((0,0,0))
    # 退出事件
    for event in pygame.event.get():
      if event.type == pygame.QUIT:
        pygame.quit()
        exit(0)
    # 文字從右向左移動(dòng)
    jx.x -= 5
    # 如果字體全部移動(dòng)出屏幕,則設(shè)置字體X軸位置為510, 500的話會(huì)出現(xiàn)的比較突然
    if jx.x < 0 - ztw:
      jx.x = 510
    # 屏幕繪制字體,
    screen.blit(text,[jx.x,jx.y])
    # 更新屏幕顯示
    pygame.display.update()

if __name__ == '__main__':
  main()

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


文章標(biāo)題:Pythonpygame繪制文字制作滾動(dòng)文字過程解析-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://weahome.cn/article/ipdis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部