九鼎创展论坛

标题: x3288更换开机logo [打印本页]

作者: berry    时间: 2016-5-31 14:28
标题: x3288更换开机logo
本帖最后由 berry 于 2016-5-31 14:40 编辑

在电脑上执行:adb shell dumpsys window windows
获得屏幕大小:mFrame=[0,0][600,1024],x=1024 ,y=600

下载GIMP工具,最新版本2.8。选定开机logo图片,将分辨率修改为1024x600。
1. 用GIMP打开图像文件。
2. 菜单-> 图像-> 模式-> 索引-> 弹出“索引颜色转换窗口”。
3. 选"优化色版",在“生成最大颜色数量”中填入 224。
4. 在“颜色抖动"上选 Floyd-Steinberg(普通)。
5.文件->Export As->选择文件类型为ppm。(注意另存为是找不到ppm文件类型的选项的)。

将图片另存为:logo_linux_clut224.ppm
拷贝到:x3288/kernel/drivers/video/logo/logo_linux_clut224.ppm
删除:x3288/kernel/drivers/video/logo/logo_linux_clut224.o
         x3288/kernel/drivers/video/logo/logo_linux_clut224.c

重新编译内核: ./mk -k
重新烧录:大功告成。

如果图片比屏幕小可以设置logo居中:
1、设置logo图片在屏幕中的位置
vim x3288/kernel/drivers/video/fbmem.c
找到"fb_show_logo_line"函数,把
image.dx = 0;
image.dy = y;
改为
image.dx = (info->var.xres-image.width)/2;
image.dy = (info->var.yres-image.height)/2;
[注:
info->var.xres和info->var.yres是分辨率大小
image.width和image.height是logo图片的大小
]

2、
vim x3288/kernel/drivers/video/console/fbcon.c
找到"fbcon_prepare_logo"函数,在
logo_height = fb_prepare_logo(info, ops->rotate);
后面加上
logo_height += (info->var.yres - logo_height)/2





欢迎光临 九鼎创展论坛 (http://bbs.9tripod.com/) Powered by Discuz! X3.2