猫史档案馆


【Python作品分享】代码雨

用户:Vincent_xiaoboVincent_xiaobo查看:0 回复:1 评论:0 创建时间:2021-06-26T15:47:20


【作品展示】

center_image

 

【作品介绍】

1.制作:十牛 字体来源于网络

2.运行该程序必须下载字体SimHei.ttf,否则会报错!!!下载方式:用我下面的链接或自行下载。

SimHei.ttf下载地址:https://fonts.lanzoui.com/iWkQlli4y4b

 

【作品源代码】

import pygame
import sys
import random

pygame.init()

resolution = width, height = 800, 600  # 设置窗口大小和标题
windowSurface = pygame.display.set_mode(resolution)  # 设置分辨率并得到全局的【绘图表面】
pygame.display.set_caption("中文字符雨")  # 设置标题

bgSurface = pygame.Surface((width, height), flags=pygame.SRCALPHA)
pygame.Surface.convert(bgSurface)
bgSurface.fill(pygame.Color(0, 0, 0, 35))

# 创建时钟对象
clock = pygame.time.Clock()

if __name__ == '__main__':

    str1 = "01abcdefghijklmnopqurstuvwxyz"
    str1 = "我们希望看到江南水乡的美景。江南水乡,烟雨蒙蒙,雨滴颜色五颜六色,大小不一"
    letter = list(str1)
    font = pygame.font.Font("./SimHei.ttf", 14)
    texts = [
        font.render(str(letter[i]), True, (0, 255, 0)) for i in range(26)
    ]

    column = int(width/15)
    drops = [0 for i in range(column)]

    while True:
        # 处理用户输入
        for event in pygame.event.get():
            # 处理退出事件
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit()
        windowSurface.blit(bgSurface, (0, 0))
        # 绘制结束,刷新界面

        for i in range(len(drops)):
            text = random.choice(texts)

            windowSurface.blit(text, (i * 15, drops[i] * 15))

            drops[i] += 1
            if drops[i] * 10 > height or random.random() > 0.9:
                drops[i] = 0

        pygame.display.flip()

        # 时钟停留一帧的时长
        clock.tick(20)

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
硕硕ss硕硕ss

不错,看看我的吧

 

点赞0


评论