vt开机画面的BMP转换PHP程序
vt开机画面,默认是一个简单的FreeBSD,如果要换成自己的,需要自己制作并把相应的十六进制代码写在C语言代码中。但是vt用的bmp跟常用的windows bmp不一致,直接把windows下的bmp文件的十六进制代码写入是倒着显示的,这还要去掉bmp头部才可以。
经过源代码的分析,写了一个简单的小程序,可以转换为vt需要的16进制模式。
熟悉PHP,反倒把Shell忘的差不多了,所以就写php程序了,修改也简单,不像C要修改还要重新编译:
输入为当前目录下aa.bmp,其实也可以写成参数,懒人就穷凑合了……<?php
$fp = fopen(dirname(__FILE__). '/aa.bmp', 'rb');
$cont = fread( $fp, 40000 );
fclose( $fp );
$hex_str = str_split( bin2hex( $cont ) , 2 );
$hex_str = array_slice( $hex_str, 62, 38400 );
var_dump( count( $hex_str ));
$tmp = '';
$out = array();
foreach( $hex_str as $i=>$v ){
$m = $i % 80;
// is the end line
if( $m < 1 ){
$tmp .= "\n";
$out[] = $tmp;
$tmp = '';
}
$tmp .= '0x' . $v . ',';
}
$out = array_reverse( $out );
foreach ( $out as $v ) echo $v ;
echo "\n";
?>
"vt开机画面"是什么
这是有趣的,可以请你分享更多的信息? 回复 2# williamy
http://bbs.chinaunix.net/thread-4177652-1-1.html
页:
[1]