Linux的Logo修改

 Linux的Logo修改

     Linux操作系统是基于UNIX操作系统发展而来的一种克隆系统,它诞生于1991 年的 [Linux桌面] 10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类操作系统,博主所在电鱼电子公司也是大多数人都在使用,并且使用人数还在迅猛增长。接下来,具体步骤:

1、安装pngtopnm工具。

$ sudo apt-get install netpbm

注:安装完以后就会有pngtopnm,pnmquant,pnmtoplainpnm三个工具。

2、选择logo的图片:

 首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式,

 比如保存为dianyu.png。需要注意设置好图片的尺寸大小,不能超过屏幕分辨率的大小,不然制作出来的图片将不能在屏幕上显示出来。

3、制作.ppm格式的图片:

$ pngtopnm dianyu.png > dianyu.pnm

$ pnmquant 224 dianyu.pnm > dianyu.pnm

$ pnmtoplainpnm dianyu224.pnm > dianyu224.ppm

或者

  $bmptoppm linuxlogo.bmp > dianyu.ppm               //生成ppm

  $ppmquant 224 linuxlogo.ppm > dianyu224.ppm        //转换成224颜色

  $pnmnoraw linuxlogo224.ppm > dianyu224.ppm         //转换成ascii格式

4、替换原有的图片。

   $ make clean SUB_DIR=./drivers/video/logo/           //来清除logo目录下的.c和.o文件

注:板子的图片名叫logo_linux_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色的,也要注意图片的尺寸大小要小于你的屏幕分辨率。

如何制作一个256色的位图:使用电脑自带画图工具打开然后另存为bmp图片,设置保存类型为256色位图。

2、打开tools目录下的Makefile文件,在第187行至200行间,有如下一段代码:

# Generic logo

ifeq ($(LOGO_BMP),)

LOGO_BMP= $(srctree)/$(src)/logos/denx.bmp

# Use board logo and fallback to vendor

ifneq ($(wildcard $(srctree)/$(src)/logos/$(BOARD).bmp),)

LOGO_BMP= $(srctree)/$(src)/logos/$(BOARD).bmp

else

ifneq ($(wildcard $(srctree)/$(src)/logos/$(VENDOR).bmp),)

LOGO_BMP= $(srctree)/$(src)/logos/$(VENDOR).bmp

endif

endif

endif # !LOGO_BMP

3、"freescale.bmp"即为logo图标。你可以用你自己喜欢的图标来代替他,

4、在common目录下,打开lcd.c文件,可以改变logo的位置,该坐标函数为 lcd_logo_plot(0,0); 改变x,y的数字,来改变logo的显示位置。该函数在lcd.c代码的722行

5、进入u-boot根目录,执行make即可!

这样就OK了!欢迎访问电鱼电子(www.dianyu.com.cn)

猜你喜欢

转载自www.cnblogs.com/dianyu/p/11776638.html