首頁 > 軟體

python 實現列印掃描效果詳情

2022-08-02 14:04:31

1. 介紹

前面我們嘗試通過python實現了程式碼雨以及字母隨機閃爍的效果,這次,我們再來實現一個程式碼的線性掃面。

同樣的,此次我們仍然是使用30行程式碼來實現這個效果。

此次我們只是用pygamerandom兩個包,首先,將他們匯入:

import pygame
import random

之後,我們進行pygame介面的初始化工作:

# 引數
SCREENSIZE=(600,600)
BLACK=(0,0,0,13)
# 初始化
pygame.init()
font = pygame.font.SysFont('宋體', 20)
screen = pygame.display.set_mode(SCREENSIZE)
surface = pygame.Surface(SCREENSIZE, flags=pygame.SRCALPHA)
pygame.Surface.convert(surface)
surface.fill(BLACK)
screen.fill(BLACK)

之後設定一下我們字型的相關內容:

# 內容
lib=[chr(i) for i in range(48,48+10)] + [chr(i) for i in range(97,97+26)]   # [0-9 a-z]
texts = [font.render(l, True, (0, 255, 0)) for l in lib]
cols = list(range(40))  # 字型15, 視窗600

最後在一個迴圈中,更新介面並繪製出程式碼雨:

while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
    pygame.time.delay(33)
    screen.blit(surface, (0, 0))
    for i in range(n:=len(cols)):
        text = random.choice(texts)
        # 字母掃描
        screen.blit(text, (i * 15, cols[i] * 15))
        cols[i] = (cols[i]+1)%40
    pygame.display.flip()

2. 完整程式碼

完整程式碼如下:

import pygame
import random
# 引數
SCREENSIZE=(600,600)
BLACK=(0,0,0,13)
# 初始化
pygame.init()
font = pygame.font.SysFont('宋體', 20)
screen = pygame.display.set_mode(SCREENSIZE)
surface = pygame.Surface(SCREENSIZE, flags=pygame.SRCALPHA)
pygame.Surface.convert(surface)
surface.fill(BLACK)
screen.fill(BLACK)
# 內容
lib=[chr(i) for i in range(48,48+10)] + [chr(i) for i in range(97,97+26)]   # [0-9 a-z]
texts = [font.render(l, True, (0, 255, 0)) for l in lib]
cols = list(range(40))  # 字型15, 視窗600
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()
    pygame.time.delay(33)
    screen.blit(surface, (0, 0))
    for i in range(n:=len(cols)):
        text = random.choice(texts)
        # 字母掃描
        screen.blit(text, (i * 15, cols[i] * 15))
        cols[i] = (cols[i]+1)%40
    pygame.display.flip()

截止到現在,我們已經學會了用簡簡單單的30行程式碼實現程式碼雨,閃爍程式碼以及線性掃描三種炫酷的特效了,相信大家在這個過程中也對 python 有了一個最初步的理解與認識,

到此這篇關於python 實現列印掃描效果詳情的文章就介紹到這了,更多相關python 列印掃描內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com