Linux的Logo修改

喜歡的圖片保存成png格式 
# pngtopnm linuxlogo.png > linuxlogo.pnm //    **首次使用者需要apt-get install netpbm**
# pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm  // **轉成224色**
# pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm
mv linuxlogo224.ppm logo_linux_clut224.ppm
logo_linux_clut224.ppm替換kernel/drivers/video/logo/logo_linux_clut224.ppm
1、安装pngtopnm工具。
$ sudo apt-get install netpbm 
注:安装完以后就会有pngtopnm,pnmquant,pnmtoplainpnm三个工具。
2、选择logo的图片:
 首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式,
 比如保存为linuxlogo.png.
3、制作.ppm格式的图片:
$ pngtopnm linuxlogo.png > linuxlogo.pnm 
$ pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm 
$ pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm 
或者
  $bmptoppm linuxlogo.bmp > linuxlogo.ppm               //生成ppm
  $ppmquant 224 linuxlogo.ppm > linuxlogo224.ppm        //转换成224颜色
  $pnmnoraw linuxlogo224.ppm > linuxlogo224.ppm         //转换成ascii格式
4、替换原有的图片。
   $ make clean SUB_DIR=./drivers/video/logo/           //来清除logo目录下的.c和.o文件
注:apus板子的图片名叫logo_dec_clut224.ppm,所以只要用第三步生成的图片替换即可。

提高篇:
很容易发现,对于一般的vga console,logo是由drivers/video/fbmem.c里的fb_show_logo()函数显示的,
这个函数的调用者是 drivers/video/console/fbcon.c。这个函数做的事情不多,就
是先把非8位色深的位图转换为8位色深,然后用info->fbops->fb_imageblit(info, &image);把logo显示出来,有一个cpu时显示一个logo,有2个cpu时显示2个,以此类推。
 
修改logo高度:
    所在文件drivers/video/console/fbcon.c
{{
logo_height = fb_prepare_logo(info, ops->rotate)+xxxxxxx; //在加减相应xxxxxxx从而实现高度调整。
 logo_lines = DIV_ROUND_UP(logo_height, vc->vc_font.height);
}}


U-boot LOGO修改:
 
如何更改Uboot的启动logo:
1、进入tools目录,在该目录下你会看到一个叫logos的目录,里面存的是logo图标,
可以自己添加logo图标到该目录,注意需256色的。
2、打开tools目录下的Makefile文件,在第44行至48行间,有如下一段代码:
ifeq ($(LOGO_BMP),)
LOGO_BMP= logos/denx.bmp
endif
ifeq ($(VENDOR),denx)
LOGO_BMP= logos/denx.bmp
3、"denx.bmp"即为logo图标。你可以用你自己喜欢的图标来代替他,,
4、在common目录下,打开lcd.c文件,可以改变logo的位置,该坐标函数为 bitmap_plot (0, 0); 
改变x,y的数字,来改变logo的显示位置。该函数在lcd.c代码的857行
5、进入u-boot根目录,执行make即可!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值