溫馨提示×

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

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

如何用Python制作中文漢字雨效果

發(fā)布時(shí)間:2022-03-11 11:43:50 來(lái)源:億速云 閱讀:154 作者:iii 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要介紹“如何用Python制作中文漢字雨效果”的相關(guān)知識(shí),小編通過(guò)實(shí)際案例向大家展示操作過(guò)程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“如何用Python制作中文漢字雨效果”文章能幫助大家解決問(wèn)題。

直接上代碼

import pygame
import random
 
 
def main():
    # 初始化pygame
    pygame.init()
 
    # 默認(rèn)不全屏
    fullscreen = False
    # 窗口未全屏寬和高
    WIDTH, HEIGHT = 1100, 600
 
    init_width, init_height = WIDTH, HEIGHT
 
    # 字塊大小,寬,高
    suface_height = 18
    # 字體大小
    font_size = 20
 
    # 創(chuàng)建一個(gè)窗口
    screen = pygame.display.set_mode((init_width, init_height))
 
    # 字體
    font = pygame.font.Font('msyh.ttf', font_size)
 
    # 創(chuàng)建一個(gè)圖像對(duì)象
    bg_suface = pygame.Surface((init_width, init_height), flags=pygame.SRCALPHA)
    pygame.Surface.convert(bg_suface)
    bg_suface.fill(pygame.Color(0, 0, 0, 28))
 
    # 用純色填充背景
    screen.fill((0, 0, 0))
 
    # 顯示的字符
    letter = ['東南大學(xué)', '   ', '雙一流', '   ', '  ', '大學(xué)', '  ', '機(jī)械工程學(xué)院', '   ', '   ', '  ', '東南', '   ', '雙一流']
    texts = [
        font.render(str(letter[i]), True, (0, 255, 0)) for i in range(len(letter))
    ]
 
    # 也可以替換成0 1 顯示
    # texts = [
    #     font.render('0',True,(0,255,0)),font.render('1',True,(0,255,0))
    # ]
 
    # 生成的列數(shù)
    column = int(init_width / suface_height)
    drops = [0 for i in range(column)]
 
    while True:
        # 按鍵檢測(cè)
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                # 接受到退出事件后退出
                exit()
            elif event.type == pygame.KEYDOWN:
                # 按F11切換全屏,或窗口
                if event.key == pygame.K_F11:
                    print("檢測(cè)到按鍵F11")
                    fullscreen = not fullscreen
                    if fullscreen:
                        # 全屏效果,參數(shù)重設(shè)
                        size = init_width, init_height = pygame.display.list_modes()[0]
                        screen = pygame.display.set_mode(size, pygame.FULLSCREEN | pygame.HWSURFACE)
 
                    else:
                        init_width, init_height = WIDTH, HEIGHT
                        screen = pygame.display.set_mode((WIDTH, HEIGHT))
 
                    # 圖像對(duì)象重新創(chuàng)建
                    bg_suface = pygame.Surface((init_width, init_height), flags=pygame.SRCALPHA)
                    pygame.Surface.convert(bg_suface)
                    bg_suface.fill(pygame.Color(0, 0, 0, 28))
                    column = int(init_width / suface_height)
                    drops = [0 for i in range(column)]
                elif event.key == pygame.K_ESCAPE:
                    # 按ESC退出
                    exit()
        # 延時(shí)
        pygame.time.delay(30)
 
        # 圖像對(duì)象放到窗口的原點(diǎn)坐標(biāo)上
        screen.blit(bg_suface, (0, 0))
 
        for i in range(len(drops)):
            # 隨機(jī)字符
            text = random.choice(texts)
 
            # 把字符畫到該列的下雨的位置
            screen.blit(text, (i * suface_height, drops[i] * suface_height))
 
            # 更新下雨的坐標(biāo)
            drops[i] += 1
 
            # 超過(guò)界面高度或隨機(jī)數(shù),下雨位置置0
            if drops[i] * suface_height > init_height or random.random() > 0.95:
                drops[i] = 0
 
        # 更新畫面
        pygame.display.flip()
 
 
if __name__ == '__main__':
    main()

運(yùn)行效果:

如何用Python制作中文漢字雨效果

import pygame的安裝方法

pygame 這個(gè)包沒(méi)有安裝。python安裝pygame包的方法

很簡(jiǎn)單:

使用國(guó)內(nèi)源安裝,清華源 中科,阿里都可以。

進(jìn)入Anaconda3 的虛擬環(huán)境,輸入下面的命令??焖侔惭b

pip install pygame -i https://pypi.tuna.tsinghua.edu.cn/simple

安裝效果

Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting pygame
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/4c/0d/23f786eb611652b0125fcf334a0c21324922a756e6d954c50ecddfc8d4bb/pygame-2.1.2-cp36-cp36m-win_amd64.whl (8.4 MB)
     |████████████████████████████████| 8.4 MB 119 kB/s
Installing collected packages: pygame
Successfully installed pygame-2.1.2

成功安裝。

關(guān)于“如何用Python制作中文漢字雨效果”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注億速云行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。

向AI問(wèn)一下細(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