python實(shí)現(xiàn)黑客字幕雨效果
更新時(shí)間:2018年06月21日 14:41:55 作者:xzx_kag
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)黑客字幕雨效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本文實(shí)例為大家分享了python實(shí)現(xiàn)字幕雨效果的具體代碼,供大家參考,具體內(nèi)容如下
####################################
#name : HACKER EMPIRE CAPTION RAIN
#import modules
try :
import pygame
import sys
from pygame.locals import *
from random import randint
except :
print("Load modules error!!")
exit()
#define some datas
SCREEN_WIDTH = 1366
SCREEN_HEIGHT = 768
LOW_SPEED = 30
HIGH_SPEED = 30
LOW_SIZE = 5
HIGH_SIZE = 30
FONT_SIZE = 40
FONT_NAME = "myfont.ttf"
FREQUENCE = 50
times = 0
#def random color
def randomcolor() :
return (randint(0,255),randint(0,255),randint(0,255))
def randomspeed() :
return randint(LOW_SPEED,HIGH_SPEED)
def randomposition() :
return (randint(0,SCREEN_WIDTH),randint(0,SCREEN_HEIGHT))
def randomsize() :
return randint(LOW_SIZE,HIGH_SIZE)
def randomoname() :
return randint(0,100000)
def randomvalue() :
return randint(0,9)#this is your own display number range
#class of sprite
class Word(pygame.sprite.Sprite) :
def __init__(self,bornposition) :
pygame.sprite.Sprite.__init__(self)
self.value = randomvalue()
self.font = pygame.font.Font(FONT_NAME,FONT_SIZE)
self.image = self.font.render(str(self.value),True,randomcolor())
self.speed = randomspeed()
self.rect = self.image.get_rect()
self.rect.topleft = bornposition
def update(self) :
self.rect = self.rect.move(0,self.speed)
if self.rect.top > SCREEN_HEIGHT :
self.kill()
#init the available modules
pygame.init()
screen = pygame.display.set_mode((SCREEN_WIDTH,SCREEN_HEIGHT))
pygame.display.set_caption("HACKER EMPIRE CAPTION RAIN")
clock = pygame.time.Clock()
group = pygame.sprite.Group()
group_count = SCREEN_WIDTH / FONT_SIZE
#mainloop
while True :
time = clock.tick(FREQUENCE)
for event in pygame.event.get() :
if event.type == QUIT :
pygame.quit()
exit()
screen.fill((0,0,0))
for i in range(0,group_count) :
group.add(Word((i * FONT_SIZE,-FONT_SIZE)))
group.update()
group.draw(screen)
pygame.display.update()
#save pictures
#times += time
#if times > 5000 :
#pygame.image.save(screen,str(randomoname())+".png")
###########################
效果圖:

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python中l(wèi)strip()截掉字符的實(shí)例講解
在本篇文章里小編給大家整理的是一篇關(guān)于python中l(wèi)strip()截掉字符的實(shí)例講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2021-05-05
Python用selenium實(shí)現(xiàn)自動(dòng)登錄和下單的項(xiàng)目實(shí)戰(zhàn)
本文主要介紹了Python用selenium實(shí)現(xiàn)自動(dòng)登錄和下單的項(xiàng)目實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
Python+OpenCV手勢檢測與識(shí)別Mediapipe基礎(chǔ)篇
網(wǎng)上搜到了一些關(guān)于手勢處理的實(shí)驗(yàn),我在這兒簡單的實(shí)現(xiàn)一下,下面這篇文章主要給大家介紹了關(guān)于Python+OpenCV手勢檢測與識(shí)別Mediapipe基礎(chǔ)篇的相關(guān)資料,需要的朋友可以參考下2022-12-12
安裝python依賴包psycopg2來調(diào)用postgresql的操作
這篇文章主要介紹了安裝python依賴包psycopg2來調(diào)用postgresql的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01
django foreignkey(外鍵)的實(shí)現(xiàn)
這篇文章主要介紹了django foreignkey(外鍵)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

