首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

J2ME 字體與顏色完整應用指南:Font 與 RGB 色彩模型

     編輯:J2ME

Font 類別:受限環境下的字體控制

J2ME 裝置字體資源極有限,Font 僅能使用系統預設字型,無法載入自訂字體檔。透過靜態工廠方法取得實例:

Font font = Font.getFont(int face, int style, int size);

三個參數皆為常數組合,具體像素大小由實現決定。

字體外觀(face)

  • FACE_MONOSPACE:等寬字體,適合程式碼、對齊顯示。
  • FACE_PROPORTIONAL:比例字體,閱讀較舒適。
  • FACE_SYSTEM:系統預設字體,最保險的選擇。

字體樣式(style)─ 可位元組合

  • STYLE_PLAIN:正常
  • STYLE_BOLD:粗體
  • STYLE_ITALIC:斜體
  • STYLE_UNDERLINED:底線
  • 組合範例:STYLE_BOLD | STYLE_ITALIC(粗斜體)、STYLE_UNDERLINED | STYLE_BOLD(粗體底線)

字體大小(size)

  • SIZE_SMALL、SIZE_MEDIUM、SIZE_LARGE 三級,實際像素高度因裝置而異。

常用操作

// 取得系統預設字體
Font def = Font.getDefaultFont();

// 在 paint(Graphics g) 中取得/設定當前字體
Font current = g.getFont();
g.setFont(myFont);

// MIDP 2.0:List 可逐行設定字體
list.setFont(0, myFont); // 第 0 行

RGB 色彩模型:J2ME 的唯一色彩表示

J2ME 無獨立 Color 類別,直接以 24-bit RGB 整數表示顏色:0x00RRGGBB。三原色分量範圍 0~255。

顏色十進位 (R,G,B)十六進位
紅(255,0,0)0x00FF0000
綠(0,255,0)0x0000FF00
藍(0,0,255)0x000000FF
白(255,255,255)0x00FFFFFF
黑(0,0,0)0x00000000
黃(255,255,0)0x00FFFF00
青(0,255,255)0x0000FFFF
洋紅(255,0,255)0x00FF00FF

Graphics 色彩操作方法

// 取得當前繪圖顏色(回傳 0x00RRGGBB)
int color = g.getColor();

// 設定顏色:單一整數
g.setColor(0x00FF0000); // 紅

// 設定顏色:三分量
g.setColor(255, 0, 0);  // 同樣是紅

// 後續繪圖操作(drawString, fillRect, drawLine...)將使用此顏色

實戰建議

  1. 字體回退策略:優先請求 FACE_PROPORTIONAL,若 getFont() 回傳的字體特徵不符預期(可用 getFace()、getStyle()、getSize() 檢查),改用 FACE_SYSTEM。
  2. 顏色對比度:行動裝置螢幕對比度差異大,重要資訊務必使用高對比色系(如白底黑字、黑底黃字)。
  3. 避免硬編碼像素大小:使用 Font.getHeight()、stringWidth(str) 動態計算版面,適應不同解析度。
  4. MIDP 2.0 List 逐行字體:可為標題行設大號粗體,內容行用小號正體,提升資訊層次感。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved