J2ME:clip視窗可使用anchor--轉(轉)
J2ME:clip視窗可使用anchor--轉(轉)[@more@] /** * drawClip 畫一個圖片的一部分。clip視窗可使用anchor。 * * @param g * Graphics * @param x * int 要畫的位置x * @param y * int 要畫的位置y * @param image * Image 圖片 * @param clipX * int clip在圖片中的座標x * @param clipY * int clip在圖片中的座標y * @param clipWidth * int clip在圖片中的寬度 * @param clipHeight * int clip在圖片中的高度 * @param anchor * int 連結錨點 */ public static void drawClip(Graphics g, int x, int y, Image image, int clipX, int clipY, int clipWidth, int clipHeight, int anchor) { int[] old = { g.getClipX(), g.getClipY(), g.getClipWidth(), g.getClipHeight() }; //儲存原來的初始Clip大小和座標 int offsetX = 0, offsetY = 0; switch (anchor) { // 對各種的anchor的處理就是對Graphics.TOP|Graphics.LEFT的相對偏移 // 取各種情況下的相對於Graphics.TOP|Graphics.LEFT的X,Y偏移,最後 // 以Graphics.TOP|Graphics.LEFT的anchor畫出圖形 case Graphics.HCENTER | Graphics.TOP: offsetX = clipWidth / 2; break; case Graphics.RIGHT | Graphics.TOP: offsetX = clipWidth; break; case Graphics.LEFT | Graphics.VCENTER: offsetY = clipHeight / 2; break; case Graphics.HCENTER | Graphics.VCENTER: offsetX= clipWidth /2; offsetY = clipHeight / 2; break; case Graphics.RIGHT | Graphics.VCENTER: offsetX = clipWidth; offsetY = clipHeight /2; break; case Graphics.LEFT | Graphics.BOTTOM: offsetY = clipHeight; break; case Graphics.HCENTER | Graphics.BOTTOM: offsetX = clipWidth / 2; offsetY = clipHeight; break; case Graphics.RIGHT | Graphics.BOTTOM: offsetX = clipWidth; offsetY = clipHeight; break; } g.setClip(x - offsetX, y - offsetY, clipWidth, clipHeight); g.drawImage(image, x - clipX - offsetX, y - clipY - offsetY, Graphics.TOP | Graphics.LEFT); g.setClip(old[0], old[1], old[2], old[3]); //畫完後恢復CLIP大小位置 }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8225414/viewspace-951591/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- C# 介面跳轉-登陸之後跳轉至主視窗C#
- C# winForm 視窗跳轉後關閉上一個視窗的方法C#ORM
- EasyNLP帶你玩轉CLIP圖文檢索
- 【轉載】使用WindowManage實現Android懸浮窗Android
- (轉)leetcode:Find All Anagrams in a String 滑動視窗方法總結LeetCode
- Clip模型使用模型
- 可轉債轉股價值是什麼意思?可轉債轉股價值怎麼計算
- hive視窗函式使用Hive函式
- plsql developer 視窗的使用SQLDeveloper
- python+ffmpeg視訊轉碼轉格式Python
- 可轉債中籤後多久上市?可轉債中籤上市時間
- php 跳轉頁面之前彈窗提示PHP
- 視訊轉換工具
- 轉:Linux檢視GPU資訊和使用情況LinuxGPU
- 帶有半透明遮罩層可關閉視窗遮罩
- Python可迭代序列反轉Python
- 將bmp檔案轉換成JPEG(待修改,目前可轉換但圖片倒轉)
- Vivado使用技巧(6):Messages視窗管理
- 使用jave1.0.2.jar進行音視訊轉碼JAR
- C#+OpenCV基礎(四)_旋轉翻轉透視C#OpenCV
- 將檢視轉為表
- Compressor視訊轉碼工具
- 視窗
- C# WPF 跳轉到第二個窗體C#
- 安全使用CString [轉]
- DataGridView使用 --轉載View
- hive視窗分析函式使用詳解系列二之分組排序視窗函式Hive函式排序
- PostgreSQL 視窗函式 ( Window Functions ) 如何使用?SQL函式Function
- Flink的滾動視窗、會話視窗、滑動視窗及其應用會話
- Go Qt5 建立空白視窗、視窗居中及關閉視窗事件GoQT事件
- Windows API視窗程式設計 - 空白視窗WindowsAPI程式設計
- 視訊轉碼解決方案
- 圖片轉化為視訊
- Compressor for Mac(視訊轉碼工具)Mac
- 拆分視窗
- 聊天視窗
- 視窗事件事件
- 2020-10-26可轉債新規
- glog 使用教程 轉載