如何制作开发板的logo标签:

一,修改由kernel显示的开机logo:

注意:QQ截图可以得到jpg格式图片,用windows的 开始->程序->附件->绘图->ACD SEE绘图工具打开,可以另存为png格式。

1,下载图形转换工具:

# sudo apt-get install netpbm   //下载图形转换工具:netpbm,安装完以后就会有pngtopnm,pnmquant,pnmtoplainpnm三个命令

2,自己制作或下载一张png格式的图片,如 **.png。

//注意:因为我的开发板的最大分辨率是:480*272,所以图片分辨率不能超过这个范围。

3,制作.ppm格式的图片

# pngtopnm **.png > **.pnm  //png格式 转换成 pnm格式

# pnmquant 224 **.pnm > **224.pnm  //量化在netpbm图像的颜色较小的一组

# pnmtoplainpnm **224.pnm > logo_linux_**224.ppm

4,拷贝文件到相应目录

拷贝logo_linux_**224.ppm文件到kernel/drivers/video/logo目录下。

5,修改kernel/drivers/video/logo目录下的Kconfig文件

config LOGO_LINUX_CLUT224

bool "Standard 224-color Linux logo"

depends on LOGO && FB_S3C24X0_S320240 || FB_S3C24X0_W320240 //这里修改为:depends on LOGO

default y

//目的:depends on LOGO会一直是真,make menuconfig时,选项会一直有效,可供选择。

6,内核的配置,在内核路径下执行:

# make menuconfig

Device Drivers --->Graphics support --->下有

选项 S3c24x0 LCD framebuffer support --> LCD select(4.3 inch 480*272 CHIMEI LCD)

选项 Console display driver support --> Framebuffer console support

选项 logo configuration --> Bootup logo --> Standart 224-color linux logo

/*

注意:

1),选项 Standard black and white Linux logo 对应的是 logo_linux_mono.pbm图片,

跟我们这里生产的图片格式不一样,make生成.c文件时会报错,所以不选择这个选项。

2),选项 Standard 16-color Linux logo 对应的是 logo_linux_vga16.ppm图片,

跟我们这里生产的图片格式不一样,make生成.c文件时会报错,所以不选择这个选项。

3),选项 Standart 224-color linux logo 对应的是 logo_linux_clut224.ppm图片,

跟我们这里生成的图片格式一样,所以要选择这个选项。

4),如果不进行下面的图片替换,平台具体使用的logo将是这个原始图片。

5),我的开发板使用的LCD:4.3英寸,分辨率:480*272

*/

7,用logo_linux_**224.ppm替换kernel/drivers/video/logo目录下的

文件logo_linux_clut224.ppm。注意:先保存原始图片文件。

# cp logo_linux_clut224.ppm .bak.logo_linux_clut224.ppm;

# cp logo_linux_**224.ppm logo_linux_clut224.ppm;

8,重新编译内核即可。在内核顶层目录下:

# make clean;make;

/*

注意:

1,其中make clean 必须执行,因为logo_linux_clut224.ppm的内容被替换了。

2,内核的makefile会自动把一张 logo_linux_clut224.ppm图片编译生成一个 logo_linux_clut224.c文件

3,另外 kernel/drivers/video/logo目录下的makefile,logo.c,不需要修改。

*/

9,启动开发板,既可看见效果

# ./mkimage.sh

# tftp 32000000 uImage

# bootm

linux开机logo制作

分类: Linux开发技术和工具 2011-07-20 20:25 1311人阅读 评论(0) 收藏 举报

linuxubuntu图形工具平台

kernel:2.6.27

1、制作logo的方法:

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

变换方式这个就不说了(very easy),比如保存为linuxlogo.png.

然后将该图片传入到装有Linux PC比如(ubuntu),按照以下顺序你就可以制作一个你喜欢logo前提你必须安装以下的工具(pngtopnm,pnmquant,pnmtoplainpnm)

$pngtopnm linuxlogo.png > linuxlogo.pnm

$pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm

$pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

或者

$bmptoppm pic.bmp > temp1.ppm //生成ppm

$ppmquant 224 temp1.ppm > temp2.ppm  //转换成224颜色

$pnmnoraw temp2.ppm > logo.ppm   //转换成ascii格式

或者使用gimp软件

1、打开图片,在image/mode/indexed..中修改最大颜色数为224

2、保存为ppm格式,选择asiic存放格式

3、代替logo目录下相应图形即可

这样您制作的logo就已经成功了,将linuxlogo224.ppm

拷贝到/drivers/video/logo文件夹中的根据你的平台具体使用的哪个logo进行命名,

比如logo_linux_clut224.ppm,友情提醒将原有的logo保存。

其中在./drivers/video/logo/下有XXX_XXX_XXX.c和XXX_XXX_XXX.o文件是在进行make编译之后生成的,可以将制作好的.ppm文件拷贝进去替换原来的logo文件之后,使用make cleanSUB_DIR=./drivers/video/logo/来清除logo目录下的.c和.o文件。

这样你的logo就完全制作好了,但是有这一点还是不够的,你必须在内核中选择logo,接下来我们来看如何配置内核

2、配置logo选项

在内核路径下执行make menuconfig

开发板上开启logo显示的选项

a、选择虚拟控制台显示驱动

Device Drivers --->Graphicssupport --->下有

选项Console display driver support---> Framebuffer console support

选项 Bootup logo ---> Standart 224-color linux logo

三、修改由Android系统显示的静态开机画面

1. 制作要显示的图片

使用PS制作一张和当前lcd分辨率相同的图片,保存时选“存储为 Web 所用格式”,然后在弹开的窗口上,“预设”项选择“PNG-24”,保存为android_logo.png。

2. 将图片转换为raw格式

使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为:

convert -depth 8 android_logo.png rgb:android_logo.raw

如果当前系统没有安装该工具,可以执行下面的命令安装:

sudo apt-get install imagemagick

3. 将raw格式转化为rle文件

需要用到android编译后的rgb2565工具,该工具在android/out/host/linux-x86/bin目录下(android为当前源码所在目录),转换命令如下:

rgb2565 -rle < android_logo.raw > initlogo.rle

至此,需要显示的图像已经做好了,即initlogo.rle。

4.将initlogo.rle拷贝到文件系统中

将initlogo.rle拷贝到out\target\product\pantherboard\root下,并替换同名文件。然后重新制作文件系统映像并烧写即可。

5.特别说明

该图片是在system/core/init/init.c文件中显示的,具体函数调用过程如下:

console_init_action();

-> load_565rle_image(INIT_IMAGE_FILE) ;

-> unlink(fn);

函数中的宏在对应的头文件android/system/core/init/init.h中定义:

#define INIT_IMAGE_FILE "/initlogo.rle"

对于可读写型的文件系统而言,当第一次开机并显示logo后,上述unlink(fn)函数会将该logo删除,第二次开机时就不能再显示这一logo了。解决办法有两个,一是注释掉unlink(fn)函数,但是尽量不要修改源码。二是在out\target\product\xxxx\root目录下,拷贝initlogo.rle的副本,并命名为initlogo.rle.bak,直接用initlogo.rle.bak文件替换initlogo.rle也可以,不过原因还不清楚。

四、修改由Android显示的“android”文字开机动画

用winRAR 打开android\out\target\product\xxxx\system\framework目录下的framework-res.apk文件,用预显示的图片替换assets\images下相应的图片即可。

按上述方法能够改变开机logo,但是由于修改的是out目录下生成的文件,改动对android源码并没有影响,因此,若清除编译的目标文件并重新编译时,修改过的logo又被源码中的固有logo覆盖了。所以要修改源码中与logo有关的部分。具体做法是,修改/frameworks/base/core/res/assets/images/目录下的png图片,修改后再重新编译就依然是我们修改后的logo了。

与这一logo显示相关的源码在/frameworks/base/cmds/bootanimation/bootanimation.cp文件中,具体函数为

bool BootAnimation::android()。

阅读(410) | 评论(0) | 转发(0) |

在linux开发板上显示图片,制作开发板的logo标签相关推荐

  1. 嵌入式Linux开发-在6818开发板上显示图案

    lcd屏幕的显示原理 我们常说开发板的屏幕是800*480的 单位是什么? 像素点! 屏幕一行有800个像素点 一列有480个像素点. 像素点? 显示颜色的点 怎么让像素点显示自己想要的颜色? OS规 ...

  2. 开发板连续显示图片 | BAD APPLE 万耦中的二次元世界

    本文分享自中移OneOS微信公众号<万耦中的二次元世界!>,作者:小M哥. BAD APPLE原本是东方游戏里的一首歌曲,后来被加了一个MAD,由于MAD非常惊艳华丽,使得BAD APPL ...

  3. linux下tomcat6无法显示图片验证码 少了图形插件

    linux下tomcat6无法显示图片验证码(windows下显示正常) 原创 2015年10月20日 10:31:47 3526 linux下tomcat6无法显示图片验证码(windows下显示正 ...

  4. html文本框监听粘贴,HTML5将粘贴板上的图片粘贴到文本框中

    小C的第一篇技术贴,不知道怎么写,就随便写点了,如果内容不是很好还请大家见谅,尽量给小C提点建议,遇到出错的地方请告诉小C,小C会根据错误的严重程度给大家发红包,小C在这里非常感谢了. 在一次开发中遇 ...

  5. 在好友QQ空间留言板上留图片

    若您需要在好友空间留言板上发表图片,是需要您去设置个性签名的.自空间留言板改版后,已不再支持将图片直接放到空间留言中,只能将图片设置为个性签名,之后再进入好友空间留言.(注:签名更改后,之前留言过的留 ...

  6. VS+Qt应用开发-Qt+Halcon显示图片,实现鼠标缩放、移动图片

    VS+Qt应用开发-Qt+Halcon显示图片,实现鼠标缩放.移动图片 效果展示 界面设计 代码例程 完整代码 CMyLabel.h CMyLabel.cpp BrowsePic.h BrowsePi ...

  7. Qt实现在QLabel上显示图片并进行线条/矩形框/多边形的绘制

    文章目录 前言 一.事件过滤器 二.示例完整代码展示 三.下载链接 总结 前言 本文主要讲述了使用QPainter在QLabel上进行图片的显示,并使用事件过滤器让QLabel捕获QEvent::Pa ...

  8. java awt 显示图片_Java开发笔记(一百二十三)AWT图像视图

    前面介绍了AWT的几种基础控件,从按钮到文本标签,从输入框到选择框,无一例外都能显示文字,唯独无法显示某张图片文件.本以为AWT会提供专门的控件来显示图片,然而偏偏没有意料之中的图像控件,这可真是弱爆 ...

  9. 鼠标悬停文字上显示图片

    <html> <head> <meta http-equiv="Content-Type" content="text/html; char ...

  10. 在6818开发板上显示bmp图片的基本步骤

    我总结为以下四步: 1)打开液晶屏文件.打开bmp图片文件.完成液晶屏内存映射 2)读取bmp图片文件到临时数组temp,等待处理数组里面的数据. 3)处理数据.映射到液晶屏上,此处是bmp图片算法: ...

最新文章

  1. 移动服务机器人模块选型
  2. Vue的表单组件之复选框
  3. Linux df -h查看磁盘使用情况
  4. bootstrap时间控件
  5. 浪潮存储双活方案:新疆道路运输管理局的大数据应用不再是梦
  6. 12无法使用otg_12个冷知识:或许只能看看而无法使用,但却真实存在着
  7. Golang 返回errorString,而不是errorString的原因
  8. zabbix2.4监控mysql_Zabbix 2.4.5自带MySQL监控的配置使用教程
  9. 基于互联网的摄像测量系统(D 题)-- 2021 年全国大学生电子设计竞赛
  10. Java杨辉三角打印
  11. 高性能 TCP/UDP/HTTP 通信框架 HP-Socket v4.1.1
  12. idea 文件不识别 java文件显示J
  13. 七牛base64上传图片带格式
  14. 如何利用matlab循环读取文件夹中的文件
  15. 我的读书笔记 -《裸猿》
  16. Excel进阶(2)
  17. Windows文件换行符转Linux换行符
  18. 商淘软件WSTMart怎么样
  19. 1497_费曼技巧之他人观
  20. 基于Tushare的上证综指行情分析与影响其涨跌的因素(以美债为例)

热门文章

  1. SprngBoot引用外部jar包和本身日志接口冲突问题解决办法
  2. IIS6 伪静态 IIS文件类型映射配置方法 【图解】
  3. Elasticsearch核心知识点大全
  4. 骨骼的动作识别数据集_基于关节数据的人体动作识别
  5. Deltix Round, Autumn 2021 (open for everyone, rated, Div. 1 + Div. 2)
  6. oracle append parallel,oracle 优化之parallel和append
  7. 企鹅号不更新会封_我们如何为企鹅基金会筹集60,000美元
  8. apk逆向思路_逆向练手——从一个apk简单逆向看消息摘要算法
  9. P3356 火星探险问题
  10. follow your heart