《Java 手機/PDA 程序設計入門》讀書筆記9--LCDAUI低級API之繪圖

Display類
震動:display.vibrate(500);
背光:display.flashBacklight(500);
Display.isColor()--判斷是否爲彩屏
Display.numColors()--支持多少色彩
Display.numAlphaLevels()--支持透明層的數目

Display.getBestImageHeight(x)/Display.getBestImageWidth(x)--獲得圖像的高寬
x:只能是Display.ALERT,Display.LIST_ELEMENT,Display.CHOICE_GROUP_ELEMENT

Display.getBorderStyle()--
傳入false時,返回描繪邊線時所用的筆觸,結果只有可能是Graphics.SOLID或Graphics.DOTTED兩種
傳入true時,返回的是描繪高亮度邊線時所用的筆觸。

display.getColor(x)--獲得系統顏色
Display.COLOR_BACKGROUND--系統背景色
Display.COLOR_BORDER--系統邊線色
Display.COLOR_FOREGROUND--系統前景色
Display.COLOR_HIGHLIGHTED_BACKGROUN--高亮度系統背景色
Display.COLOR_HIGHLIGHTED_BORDER--高亮度系統邊線色
Display.COLOR_HIGHLIGHTED_FOREGEROUND--高亮度前景色

Graphics進階
撕裂現象-tearing 當裝置繪圖的速度慢到某一個程度時,會產生裝置之畫到一半,而程序已變更了影響內存的內容,導致屏幕上出現一半是舊的內存內容,一般是新的內存內容。

雙緩衝區-Double Buffer 在供用戶看到的Image之外,處理一個稱爲Off-Screen的Image,然後由paint()傳入的Graphics對象的drawImage()繪出。
用Canvas的isDoubleBuffered()判斷是否支持Double Buffer技術。

繪製圖片
drawImage(0
drawRegion()
drawRGB()
繪製字符串
drawString()
drawSubstring()
繪製文字
drawChar()
drawChars()

錨點
代表繪製圖形跟字符串時,所制定的X,Y作標誌的是何種意義。
7種定義:
Graphics.TOP
Graphics.BOTTOM
Graphics.LEFT
Graphics.RIGHT
Graphics.HCENTER
Graphics.VCENTER
Graphics.BASELINE

Font類
getDefaultFont() 取得代表系統缺省使用的字體對象。

getFont(face,style,size) 取得特定字體對象
各參數選項:
尺寸:
Font.SIZE_SMALL
Font.SIZE_MEDIUM
Font.SIZE_LARGE
外觀:
Font.FACE_MONOSPACE
Font.FACE_PROPORTIONAL
Font.FACE_SYSTEM
樣式:
Font.STYLE_BOLD
Font.STYLE_ITALIC
Font.STYLE_PLAIN
Font.STYLE_UNDERLINED

getFont()一個參數的,只有
FONT_INPUT_TEXT
DONT_STATIC_TEXT
兩種可供選擇

setFont()

getFace()
getStyle()
getSize()

isBold()
isItalic()
isPlain()
isUnderlined()

charWidth()
charsWidth()
stringWidth()
substringWidth()

getBaseLinePosition() 從字體最頂點到baseline的距離
getHeight()最頂點到最低點的距離

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章