jollen.org

Jollen 的 Blog
Jollen's email: jollen # jollen.org
more:  Jollen's Training

關於 Mobile Device 的美工圖

.作者:jollen/
.日期:June 19, 2007 11:37 PM


在為數眾多的 smart phone 產品中,都採用 QVGA(240x320)規格的 TFT-LCD panel,而這些 panel 都是 6x6x6 的 RGB 格式。因此,許多專為 mobile device 所發展的 rendering/text library 都會建議以此格式(6x6x6 RGB)來進行圖形介面與 art work 的設計。

比較另人好奇的地方是,6x6x6 的 RGB 格式要怎麼與 Linux kernel 的 framebuffer 驅動程式做對應。對 linux framebuffer 驅動程式有經驗的朋友都曉得,Linux framebuffer 驅動程式的 pixel format 為 4/8/16/24/32 BPP,可是我們的顯示 panel 是 18 BPP(6x6x6)的格式,要怎麼對應呢?

這是一個觀念問題。在數像處理的理論中,6x6x6 與 8x8x8 的 RGB 色彩「理論」上可視為相同,因為對人眼來說,少掉 1 或 2 個「bit plane」是對原來的圖像沒有影響的;不過,實際應用上仍會有一些「色差」的問題,所以需要一些方法來做「色差校對」。上週有一位朋友問到這個問題,利用端午佳節 google 了一些文獻,得到幾個簡單的方法,有機會再與大家分享。

由此可知,18 BPP 的 pixel format 在 Linux framebuffer 驅動程式中,可視為 8x8x8 即 24 BPP 的方式來處理。考量到 pixel 在記憶體的排列方式,以 s3c2410 為例,由於 1 pixel 佔用 1 word(4 bytes)的空間,所以用 0888 即 32 BPP 的方式來處理才方便。

對美工軟體來說,雖然我們的 panel 只能顯示 18 BPP 的顏色,但是對 art work 來說,只需要以傳統的 true color(0888 RGB)方式來繪圖即可,並不需要做特殊處理,也不需要特殊的繪圖軟體。而且,在大多數的例子中,也不需要考慮色差校對的問題。

Tags:

純手工打造說明:技術專欄文章為 Jollen 原創,內容皆為人工撰寫,無 AI 生成。轉載請註明出處與作者,並全文引用。轉載時請在文章開頭或結尾明顯處註明「本文出處:https://www.jollen.org,已取得原作者同意並授權使用。」
訂閱電子報:不定期 Jollen's Blog 精選文章隨 Moko365 電子報寄送;請透過 Moko365 電子報訂閱(可隨時取消)。

Copyright(c) 2001–2007 www.jollen.org. All rights reserved.
Last update: 2026-07-22