|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.awt.image.PixelGrabber
public class PixelGrabber
PixelGrabber 類別實作可以附加在 Image 或 ImageProducer 物件上獲得圖像像素子集的 ImageConsumer。下面是一個範例:
public void handlesinglepixel(int x, int y, int pixel) { int alpha = (pixel >> 24) & 0xff; int red = (pixel >> 16) & 0xff; int green = (pixel >> 8) & 0xff; int blue = (pixel ) & 0xff; // Deal with the pixel as necessary... } public void handlepixels(Image img, int x, int y, int w, int h) { int[] pixels = new int[w * h]; PixelGrabber pg = new PixelGrabber(img, x, y, w, h, pixels, 0, w); try { pg.grabPixels(); } catch (InterruptedException e) { System.err.println("interrupted waiting for pixels!"); return; } if ((pg.getStatus() & ImageObserver.ABORT) != 0) { System.err.println("image fetch aborted or errored"); return; } for (int j = 0; j < h; j++) { for (int i = 0; i < w; i++) { handlesinglepixel(x+i, y+j, pixels[j * w + i]); } } }
ColorModel.getRGBdefault()
欄位摘要 |
---|
從介面 java.awt.image.ImageConsumer 繼承的欄位 |
---|
COMPLETESCANLINES, IMAGEABORTED, IMAGEERROR, RANDOMPIXELORDER, SINGLEFRAME, SINGLEFRAMEDONE, SINGLEPASS, STATICIMAGEDONE, TOPDOWNLEFTRIGHT |
建構子摘要 | |
---|---|
PixelGrabber(Image img,
int x,
int y,
int w,
int h,
boolean forceRGB)
創建一個 PixelGrabber 物件,以從指定的圖像中抓取像素矩形部分 (x, y, w, h)。 |
|
PixelGrabber(Image img,
int x,
int y,
int w,
int h,
int[] pix,
int off,
int scansize)
創建一個 PixelGrabber 物件,以從指定圖像將像素矩形部分 (x, y, w, h) 抓取到給定的陣列中。 |
|
PixelGrabber(ImageProducer ip,
int x,
int y,
int w,
int h,
int[] pix,
int off,
int scansize)
創建一個 PixelGrabber 物件,以從指定 ImageProducer 所產生的圖像中將像素矩形部分 (x, y, w, h) 抓取到給定的陣列中。 |
方法摘要 | |
---|---|
void |
abortGrabbing()
請求 PixelGrabber 中止獲取圖像。 |
ColorModel |
getColorModel()
獲取該陣列中所存儲像素的 ColorModel。 |
int |
getHeight()
獲取(調整圖像高度後的)像素緩衝區的高度。 |
Object |
getPixels()
獲取像素緩衝區。 |
int |
getStatus()
返回像素的狀態。 |
int |
getWidth()
獲取(調整圖像寬度後的)像素緩衝區的寬度。 |
boolean |
grabPixels()
請求 Image 或 ImageProducer 開始傳遞像素,並等待傳遞完相關矩形中的所有像素。 |
boolean |
grabPixels(long ms)
請求 Image 或 ImageProducer 開始傳遞像素,並等待傳遞完相關矩形中的所有像素,或者等待到用完逾時期。 |
void |
imageComplete(int status)
imageComplete 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setColorModel(ColorModel model)
setColorModel 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setDimensions(int width,
int height)
setDimensions 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setHints(int hints)
setHints 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setPixels(int srcX,
int srcY,
int srcW,
int srcH,
ColorModel model,
byte[] pixels,
int srcOff,
int srcScan)
setPixels 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setPixels(int srcX,
int srcY,
int srcW,
int srcH,
ColorModel model,
int[] pixels,
int srcOff,
int srcScan)
setPixels 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
setProperties(Hashtable<?,?> props)
setProperties 方法是 ImageConsumer API 的一部分,此類別必需實作 ImageConsumer API 來檢索像素。 |
void |
startGrabbing()
請求 PixelGrabber 開始獲取像素。 |
int |
status()
返回像素的狀態。 |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public PixelGrabber(Image img, int x, int y, int w, int h, int[] pix, int off, int scansize)
img
- 從中檢索像素的圖像x
- 從圖像中進行檢索的像素矩形左上角 x 坐標,其相對於預設(未縮放)圖像大小y
- 從圖像中進行檢索的像素矩形左上角 y 坐標w
- 要檢索的像素矩形的寬度h
- 要檢索的像素矩形的高度pix
- 用於保存從圖像中檢索的 RGB 像素的整數陣列off
- 陣列中存儲第一個像素的偏移量scansize
- 陣列中一行像素到下一行像素之間的距離ColorModel.getRGBdefault()
public PixelGrabber(ImageProducer ip, int x, int y, int w, int h, int[] pix, int off, int scansize)
ip
- 產生圖像的 ImageProducer
,從該圖像中檢索像素x
- 從圖像中進行檢索的像素矩形左上角 x 坐標,其相對於預設(未縮放)圖像大小y
- 從圖像中進行檢索的像素矩形左上角 y 坐標w
- 要檢索的像素矩形的寬度h
- 要檢索的像素矩形的高度pix
- 用於保存從圖像中檢索的 RGB 像素的整數陣列off
- 陣列中存儲第一個像素的偏移量scansize
- 陣列中一行像素到下一行像素之間的距離ColorModel.getRGBdefault()
public PixelGrabber(Image img, int x, int y, int w, int h, boolean forceRGB)
img
- 要從中檢索圖像資料的圖像x
- 從圖像中進行檢索的像素矩形左上角 x 坐標,其相對於預設(未縮放)圖像大小y
- 從圖像中進行檢索的像素矩形左上角 y 坐標w
- 要檢索的像素矩形的寬度h
- 要檢索的像素矩形的高度forceRGB
- 如果總是應該將像素轉換為預設 RGB ColorModel,則為 true方法詳細資訊 |
---|
public void startGrabbing()
public void abortGrabbing()
public boolean grabPixels() throws InterruptedException
InterruptedException
- 另一個執行緒中斷了此執行緒。public boolean grabPixels(long ms) throws InterruptedException
ms
值的不同,此方法的行為如下:
ms
== 0,則等待到傳遞完所有像素
ms
> 0,則傳遞所有像素,直到逾時為止。
ms
< 0,則若抓取了所有像素,便返回 true
;否則返回 false
且不等待。
ms
- 在逾時前等待獲取圖像像素的毫秒數
InterruptedException
- 另一個執行緒中斷了此執行緒。public int getStatus()
ImageObserver
public int getWidth()
getStatus()
public int getHeight()
getStatus()
public Object getPixels()
getStatus()
,
setPixels(int, int, int, int, ColorModel, byte[], int, int)
,
setPixels(int, int, int, int, ColorModel, int[], int, int)
public ColorModel getColorModel()
getStatus()
,
ColorModel.getRGBdefault()
,
setColorModel(ColorModel)
public void setDimensions(int width, int height)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setDimensions
width
- 尺寸的寬度height
- 尺寸的高度public void setHints(int hints)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setHints
hints
- 用於處理像素的提示集public void setProperties(Hashtable<?,?> props)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setProperties
props
- 屬性列表public void setColorModel(ColorModel model)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setColorModel
model
- 指定的 ColorModel
getColorModel()
public void setPixels(int srcX, int srcY, int srcW, int srcH, ColorModel model, byte[] pixels, int srcOff, int srcScan)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setPixels
srcX
- 要設置的像素區域左上角的 X 坐標srcY
- 要設置的像素區域左上角的 Y 坐標srcW
- 像素區域的寬度srcH
- 像素區域的高度model
- 指定的 ColorModel
pixels
- 像素陣列srcOff
- 像素陣列中的偏移量srcScan
- 像素陣列中一行像素到下一行的距離getPixels()
public void setPixels(int srcX, int srcY, int srcW, int srcH, ColorModel model, int[] pixels, int srcOff, int srcScan)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 setPixels
srcX
- 要設置的像素區域左上角的 X 坐標srcY
- 要設置的像素區域左上角的 Y 坐標srcW
- 像素區域的寬度srcH
- 像素區域的高度model
- 指定的 ColorModel
pixels
- 像素陣列srcOff
- 像素陣列中的偏移量srcScan
- 像素陣列中一行像素到下一行的距離getPixels()
public void imageComplete(int status)
註:此方法應該由要從中抓取像素的 Image 的 ImageProducer 調用。使用此類別檢索圖像像素的開發人員應該避免直接調用此方法,因為該調用操作可能導致檢索請求像素時出現問題。
ImageConsumer
中的 imageComplete
status
- 正在載入的圖像的狀態ImageProducer.removeConsumer(java.awt.image.ImageConsumer)
public int status()
getStatus
具有相同的實作,但是優先使用 getStatus
方法,因為它遵循檢索資訊方法的命名約定,即 "getXXX" 的形式。
ImageObserver
,
getStatus()
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。