黑客帝国字幕雨视频(黑客帝国文字雨)

hacker2年前关于黑客接单94
本文导读目录:

黑客帝国数字雨flash(和电影上一模一样的)

http://www.nichescreensavers.com/anothermatrixsetup.exe

下好了一路next到底完事后在选择屏保那预览一下

不行在桌面图标上点右键选择“安装”

怎么用FLASH做出黑客帝国数字雨的特效

建议你用affter effect做,

优酷搜索“ 罡渡晨星 黑客帝国数字雨 “ 刚刚好就是你要的教程,这个也是最像的了,罡渡晨星还有很多别的教程,非常优秀的。

参考【 频你本视 】视频 *** 初学网。

黑客帝国中数字雨下载

http://www.gougou.com/search?search=%E6%95%B0%E5%AD%97%E9%9B%A8id=1

这个希望你喜欢

黑客帝国数字雨屏保

这个地址可以下http://down.letget.com//0609/0913/hack.rar 直接复制到迅雷

还有http://bbs.huanjue.org/1210918483/Day_080827/23_1_f32aa98116f05c5.gif

可不可以教我黑客帝国数字雨的 ***

#include windows.h

#define ID_TIMER 1

#define STRMAXLEN 25 //一个显示列的更大长度

#define STRMINLEN 8 //一个显示列的最小长度

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

//////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////

typedef struct tagCharChain //整个当作屏幕的一个显示列,这是个双向列表

{

struct tagCharChain *prev; //链表的前个元素

TCHAR ch; //一个显示列中的一个字符

struct tagCharChain *next; //链表的后个元素

}CharChain, *pCharChain;

typedef struct tagCharColumn

{

CharChain *head, *current, *point;

int x, y, iStrLen; //显示列的开始显示的x,y坐标,iStrLen是这个列的长度

int iStopTimes, iMustStopTimes; //已经停滞的次数和必须停滞的次数,必须停滞的次数是随机的

}CharColumn, *pCharColumn;

int main(HINSTANCE hInstance, HINSTANCE hPrevInstance,

PSTR szCmdLine, int iCmdShow)

{

static TCHAR szAppName[] = TEXT ("matrix") ;

HWND hwnd ;

MSG msg ;

WNDCLASS wndclass ;

wndclass.style = CS_HREDRAW | CS_VREDRAW ;

wndclass.lpfnWndProc = WndProc ;

wndclass.cbClsExtra = 0 ;

wndclass.cbWndExtra = 0 ;

wndclass.hInstance = hInstance ;

wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;

wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;

wndclass.hbrBackground = (HBRUSH) GetStockObject (BLACK_BRUSH) ;

wndclass.lpszMenuName = NULL ;

wndclass.lpszClassName = szAppName ;

if(!RegisterClass (wndclass))

{

MessageBox (NULL, TEXT ("此程序必须运行在NT下!"), szAppName, MB_ICONERROR) ;

return 0;

}

hwnd = CreateWindow (szAppName, NULL,

WS_DLGFRAME | WS_THICKFRAME | WS_POPUP,

0, 0,

GetSystemMetrics( *** _CXSCREEN), GetSystemMetrics( *** _CYSCREEN),

NULL, NULL, hInstance,

NULL) ;

ShowWindow (hwnd, SW_SHOWMAXIMIZED) ; //更大化显示

UpdateWindow (hwnd) ;

ShowCursor(FALSE); //隐藏鼠标光标

srand ((int) GetCurrentTime ()) ; //初始化随机数发生器

while (GetMessage (msg, NULL, 0, 0))

{

TranslateMessage (msg) ;

DispatchMessage (msg) ;

}

ShowCursor(TRUE); //显示鼠标光标

return msg.wParam ;

}

TCHAR randomChar() //随机字符产生函数

{

return (TCHAR)(rand()%(126-33)+33); //33到126之间

}

int init(CharColumn *cc, int cyScreen, int x) //初始化

{

int j;

cc-iStrLen = rand()%(STRMAXLEN-STRMINLEN) + STRMINLEN; //显示列的长度

cc-x = x+3 ; //显示列的开始显示的x坐标

cc-y =rand()%3?rand()%cyScreen:0; //显示列的开始显示的y坐标

cc-iMustStopTimes = rand()%6 ;

cc-iStopTimes = 0 ;

cc-head = cc-current =

(pCharChain)calloc(cc-iStrLen, sizeof(CharChain)); //生成显示列

for(j=0; jcc-iStrLen-1; j++)

{

cc-current-prev = cc-point; //cc-point一个显示列的前个元素

cc-current-ch = '\0';

cc-current-next = cc-current+1; //cc-current+1一个显示列的后个元素

cc-point = cc-current++; //cc-point = cc-current; cc-current++;

}

cc-current-prev = cc-point; //最后一个节点

cc-current-ch = '\0';

cc-current-next = cc-head;

cc-head-prev = cc-current; //头节点的前一个为此链的最后一个元素

cc-current = cc-point = cc-head; //free掉申请的内存要用current当参数

cc-head-ch = randomChar(); // 对链表头的 元素填充

return 0;

}

LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{

HDC hdc ;

//ctn 用来确定一个显示链是否 向下前进,如果等待次数超过必须等待的次数,ctn就代表要向下前进

int i, j, temp, ctn; //j为一个显示链中除链表头外的在屏幕上显示的y坐标,temp绿色过度到黑色之用

static HDC hdcMem;

HFONT hFont;

static HBITMAP hBitmap;

static int cxScreen, cyScreen; //屏幕的宽度 高度.

static int iFontWidth=10, iFontHeight=15, iColumnCount; //字体的宽度 高度, 列数

static CharColumn *ccChain;

switch (message)

{

case WM_CREATE:

cxScreen = GetSystemMetrics( *** _CXSCREEN) ; //屏幕宽度

cyScreen = GetSystemMetrics( *** _CYSCREEN) ;

SetTimer (hwnd, ID_TIMER, 10, NULL) ;

hdc = GetDC(hwnd);

hdcMem = CreateCompatibleDC(hdc);

hBitmap = CreateCompatibleBitmap(hdc, cxScreen, cyScreen);

SelectObject(hdcMem, hBitmap);

ReleaseDC(hwnd, hdc);

//创建字体

hFont = CreateFont(iFontHeight, iFontWidth-5, 0, 0, FW_BOLD, 0, 0, 0,

DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,

DRAFT_QUALITY, FIXED_PITCH | FF_SWISS, TEXT("Fixedsys"));

SelectObject(hdcMem, hFont);

DeleteObject (hFont) ;

SetBkMode(hdcMem, TRANSPARENT); //设置背景模式为 透明

iColumnCount = cxScreen/(iFontWidth*3/2); //屏幕所显示字母雨的列数

ccChain = (pCharColumn)calloc(iColumnCount, sizeof(CharColumn));

for(i=0; iiColumnCount; i++)

{

init(ccChain+i, cyScreen, (iFontWidth*3/2)*i);

}

return 0 ;

case WM_TIMER:

hdc = GetDC(hwnd);

PatBlt (hdcMem, 0, 0, cxScreen, cyScreen, BLACKNESS) ; //将内存设备映像刷成黑色

for(i=0; iiColumnCount; i++)

{

ctn = (ccChain+i)-iStopTimes++ (ccChain+i)-iMustStopTimes;

//

(ccChain+i)-point = (ccChain+i)-head; //point用于遍历整个显示列

//之一个字符显示为 白色

SetTextColor(hdcMem, RGB(255, 255, 255));

TextOut(hdcMem, (ccChain+i)-x, (ccChain+i)-y, ((ccChain+i)-point-ch), 1);

j = (ccChain+i)-y;

(ccChain+i)-point = (ccChain+i)-point-next;

//遍历整个显示列,将这个显示列里的字符从下往上显示

temp = 0 ; //temp绿色过度到黑色之用

while((ccChain+i)-point != (ccChain+i)-head (ccChain+i)-point-ch)

{

SetTextColor(hdcMem, RGB(0, 255-(255*(temp++)/(ccChain+i)-iStrLen), 0));

TextOut(hdcMem, (ccChain+i)-x, j-=iFontHeight, ((ccChain+i)-point-ch), 1);

(ccChain+i)-point = (ccChain+i)-point-next;

}

if(ctn)

(ccChain+i)-iStopTimes = 0 ;

else continue;

(ccChain+i)-y += iFontHeight; //下次开始显示的y坐标 为当前的y坐标加上 一个字符的高度

//如果开始显示的y坐标减去 整个显示列的长度超过了屏幕的高度

if( (ccChain+i)-y-(ccChain+i)-iStrLen*iFontHeight cyScreen)

{

free( (ccChain+i)-current );

init(ccChain+i, cyScreen, (iFontWidth*3/2)*i);

}

//链表的头 为此链表的前个元素,因为下次开始显示的时候 就相当与在整个显示列的开头添加个元素,然后在开始往上显示

(ccChain+i)-head = (ccChain+i)-head-prev;

(ccChain+i)-head-ch = randomChar();

}

BitBlt(hdc, 0, 0, cxScreen, cyScreen, hdcMem, 0, 0, SRCCOPY);

ReleaseDC(hwnd, hdc);

return 0;

case WM_RBUTTONDOWN:

KillTimer (hwnd, ID_TIMER) ;

return 0;

case WM_RBUTTONUP:

SetTimer (hwnd, ID_TIMER, 10, NULL) ;

return 0;

//处理善后工作

case WM_KEYDOWN:

case WM_LBUTTONDOWN:

case WM_DESTROY:

KillTimer (hwnd, ID_TIMER) ;

DeleteObject(hBitmap);

DeleteDC(hdcMem);

for(i=0; iiColumnCount; i++)

{

free( (ccChain+i)-current );

}

free(ccChain);

PostQuitMessage (0) ;

return 0 ;

}

return DefWindowProc (hwnd, message, wParam, lParam) ;

}

VC++中运行

黑客帝国数字雨flash

http://www.flashline.cn/pt/play.html?shuziyu.swf

http://www.flashline.cn/pt/play.html?Matrix_color.swf

求黑客帝国数字雨flash

flash不行,html5的可以

canvas id="canvas" style="background:black" width="620" height="340"/canvas

audio style="display:none; height: 0" id="bg-music" preload="auto" src="music/黑客帝国.mp3"/audio

style type="text/css"

body{margin: 0; padding: 0; overflow: hidden;}

/style

script type="text/javascript"

 

 window.onload = function(){

  //获取图形对象

  var canvas = document.getElementById("canvas");

  //获取图形的上下文

  var context = canvas.getContext("2d");

  //获取浏览器屏幕的宽度和高度

  var W = window.innerWidth;

  var H = window.innerHeight;

  //设置canvas的宽度和高度

  canvas.width = W;

  canvas.height = H;

  //每个文字的字体大小

  var fontSize = 15;

  //计算列

  var colunms = Math.floor(W /fontSize); 

  //记录每列文字的y轴坐标

  var drops = [];

  //给每一个文字初始化一个起始点的位置

  for(var i=0;icolunms;i++){

   drops.push(0);

  }

  //运动的文字

  var str ="01abcdefghijklmnopqurstuvwxyz";

  //4:fillText(str,x,y);原理就是去更改y的坐标位置

  //绘画的函数

  function draw(){

  //让背景逐渐由透明到不透明

   context.fillStyle = "rgba(0,0,0,0.05)";

   context.fillRect(0,0,W,H);

   //给字体设置样式

   //context.font = "700 "+fontSize+"px  微软雅黑";

   context.font = fontSize + 'px arial';

   //给字体添加颜色

   context.fillStyle ="green";//随意更改字体颜色

   //写入图形中

   for(var i=0;icolunms;i++){

    var index = Math.floor(Math.random() * str.length);

    var x = i*fontSize;

    var y = drops[i] *fontSize;

    context.fillText(str[index],x,y);

    //如果要改变时间,肯定就是改变每次他的起点

    if(y = canvas.height  Math.random()  0.92){

     drops[i] = 0;

    }

    drops[i]++;

   }

  };

  function randColor(){

   var r = Math.floor(Math.random() * 256);

   var g = Math.floor(Math.random() * 256);

   var b = Math.floor(Math.random() * 256);

   return "rgb("+r+","+g+","+b+")";

  }

  draw();

  setInterval(draw,33);

 };

/script

望采纳

求黑客帝国的数字雨屏保,win7可用的

我给你发过去了,我这个官方网站下载啊稀有产品,跟电影里面的有点区别,就是格几秒钟会出字幕不过也是绿色的然后消失到背景里面。

相关文章

香港房产信息:琨仑180天付款计划 印花税回赠高

文章转载自:香港地产资讯网 华懋26日公布屯门琨仑售价,按售价计,本地人平面价折实为约2,829万米起、非本地人及公司客折实价为约2,729万米起。 发展商为买家提供两种优惠付款方法,买家除可享有...

烧肉人烧烤加盟店赚钱吗?好项目怎能不赚钱

烧肉人烧烤加盟店赚钱吗?好项目怎能不赚钱

有首网红歌这样唱“大金链子,小手表,一天三顿小烧烤”足以看见东北人对烧烤的喜爱,心情不好了,可以一个人去撸串去,也可以和好朋友去撸串去。总之,撸串可以治愈一个人的坏心情,一顿不行两顿,两顿不行三顿,吃...

免费查开放房记录全国如何能查到我老婆开房记录

免费查开放房记录全国如何能查到我老婆开房记录在农村地域,养殖、养殖牛、养殖羊能够说成养鱼业的三大支撑。殊不知,从关键的农户看来,有的人在过去的一年里赚了很多钱,而另一些人却损害了很多钱。哪一个更有发展...

深圳男子冒充外卖小哥偷外卖吃-冒充外卖小哥偷吃外卖

深圳男子冒充外卖小哥偷外卖吃-冒充外卖小哥偷吃外卖

很多店家由于生意太忙,外卖员的送餐时间也有限,所以一般都不会核实身份和点餐信息,只要穿了外卖服就可以自行取餐,可这也给很多心怀不轨之人钻了空子,竟有人干起了偷外卖为生的活计,近日深圳某派出所就侦破了一...

营业执照多久过期怎么注销(营业执照注销详细流程)

  个体户不像公司那样可以股权转让,当个体户不经营时候,只能注销了,当然,符合条件的个体户转为有限公司的话,也可以申请政府补贴,具体可以咨询佛山金泉财税,这里,我们先例行讲讲个体户营业执照如何注销的问...

出钱定位找人真的可行吗(谁可以手机定位找人,我出钱)

出钱定位找人真的可行吗(谁可以手机定位找人,我出钱)

本文导读目录: 1、网上很多说有手机就能定位是真的还是假的?骗子多吗? 2、手机定位已付款98.8元,定位不准确,是被骗了吗 3、北斗GPS卫星找人是真的吗 4、手机定位是真的吗? 5...