linux 製作logo的方法

2021-05-27 12:11:51 字數 3076 閱讀 3497

製作logo的方法:

首先選擇乙個自己喜歡的,然後通過gimp軟體將該儲存為.png格式,

變換方式這個就不說了(very easy),比如儲存為linuxlogo.png.

然後將該傳入到裝有linuxpc比如(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格式

這樣您製作的logo就已經成功了,將linuxlogo224.ppm

拷貝到/drivers/video/logo資料夾中的根據你的平台具體使用的哪個logo進行命名,

由與我用的是redhatlinux,所以我取的名字為logo_linux_clut224.ppm,友情提醒將原有的logo儲存。

這樣你的logo就完全製作好了,但是有這一點還是不夠的,你必須在核心中選擇logo,接下來我們來看如何配置核心

2、配置logo選項

在核心路徑下執行make menuconfig

開發板上開啟logo顯示的選項

device drivers --->character devices ---》bootup logo

a、選擇虛擬控制台為控制台顯示驅動做準備

device drivers --->character devices ---> virtual terminal

[*]   support for console on virtual terminal

b、選擇虛擬控制台顯示驅動

device drivers --->graphics support --->下有這個選項console display driver support --->

根據你的硬體選擇由framebuffer還是vga

[*] framebuffer console support或者

[*] vga text console

c、device drivers --->graphics support --->

<*> support for frame buffer devices  

<*> mxc framebuffer support下選擇是vga還是tvout

[*] tvout ch7024 on mx27 //tvout

[*]support vga daughter //vga

當然以上的配置選項,因平台而異會有些小的差別。

做好以上兩個步驟,你就可以重新編譯核心,將其燒到開發板,接vga或者tvout顯示。

這樣你可以看到你自己製作的logo,你可以發現在logo的左上角有乙個閃動的游標,接下來我們說說如何將這個游標去除。

3、如何將開機logo中的游標去除

在核心的當前目錄進入到drivers/video/console/fbcon.c檔案

將static void fb_flashcursor(void *private)製成空函式如下

386 static void fb_flashcursor(void *private)

387

406

407 p = &fb_display[vc->vc_num];

408 c = scr_readw((u16 *) vc->vc_pos);

409 mode = (!ops->cursor_flash || ops->cursor_state.enable) ?

410 cm_erase : cm_draw;

411 ops->cursor(vc, info, mode, softback_lines, get_color(vc, info, c, 1),

412 get_color(vc, info, c, 0));

413 release_console_sem();

414 #endif

415 }

同樣的方法將函式static void fbcon_cursor(struct vc_data *vc, int mode)用空函式替換如下

1304 static void fbcon_cursor(struct vc_data *vc, int mode)

1305 {

1306 #if 0 //modify by yejj for clear cursor of lcdc

1307 struct fb_info *info

另一種禁止游標的方法:

drivers/video/console/makefile

#obj-$(config_framebuffer_console) += fbcon.o bitblit.o font.o softcursor.o

obj-$(config_framebuffer_console) += fbcon.o bitblit.o font.o

編譯遇到乙個soft_cursor沒有定義的問題問題,注釋**:

drivers/video/console/bitblit.c

//abing

//      if (err)

//              soft_cursor(info, &cursor);

linux開機logo製作

pngtopnm,pnmquant,pnmtoplainpnm pngtopnmlinuxlogo.png linuxlogo.pnm pnmquant 224 linuxlogo.pnm linuxlogo224.pnm pnmtoplainpnm linuxlogo224.pnm linuxlo...

linux開機logo製作

或者 bmptoppm pic.bmp temp1.ppm 生成ppm ppmquant 224 temp1.ppm temp2.ppm 轉換成224顏色 pnmnoraw temp2.ppm logo.ppm 轉換成ascii格式 這樣您製作的logo就已經成功了,將linuxlogo224.pp...

Linux 開機Logo製作

linux 開機logo製作 除。3 如何將開機logo中的游標去除 在核心的當前目錄進入到drivers video console fbcon.c檔案 將static void fb flashcursor void private 製成空函式如下 386 static void fb flas...