BufferedImage類詳解 解決 Unknown image type 0的問題

此分享僅是介紹BufferedImage及特點,想要解決 Unknown image type 0的問題請鏈接到如下網址https://mp.csdn.net/console/editor/html/104697450

 

類BufferedImage

  • 所有實現的接口:

    RenderedImageWritableRenderedImageTransparency


     
    公共類BufferedImage 
    擴展Image 
    實現WritableRenderedImage,Transparency
    BufferedImage子類描述了一個Image具有可訪問的圖像數據緩衝區。A BufferedImage由一個ColorModel和一個 Raster圖像數據組成。在數量和類型的帶SampleModel的 Raster必須由所要求的數量和類型相匹配 ColorModel,以表示其顏色和alpha分量。所有BufferedImage對象的左上角座標爲(0,0)。因此Raster用於構造a的 任何BufferedImage必須具有minX = 0和minY = 0。

    這個類依賴於數據的獲取和設置方法Raster,以及顏色表徵方法ColorModel

    也可以看看:

    ColorModel, Raster, WritableRaster

    • 字段細節

      • TYPE_CUSTOM

        公共靜態最終詮釋TYPE_CUSTOM

        圖像類型無法識別,因此它必須是自定義圖像。此類型僅用作getType()方法的返回值。

        也可以看看:

        常量字段值

      • TYPE_INT_RGB

        公共靜態最終詮釋TYPE_INT_RGB

        表示8位RGB顏色分量打包成整數像素的圖像。圖像有一個DirectColorModel沒有阿爾法。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_INT_ARGB

        公共靜態最終詮釋TYPE_INT_ARGB

        表示8位RGBA顏色分量打包成整數像素的圖像。圖像有一個DirectColorModel 與阿爾法。該圖像中的顏色數據被認爲不是預乘alpha。當此類型用作 構造函數的 imageType參數時BufferedImage,創建的圖像與在JDK1.1及更早版本中創建的圖像一致。

        也可以看看:

        常量字段值

      • TYPE_INT_ARGB_PRE

        public static final int TYPE_INT_ARGB_PRE

        表示8位RGBA顏色分量打包成整數像素的圖像。圖像有一個DirectColorModel 與阿爾法。該圖像中的顏色數據被認爲是預乘alpha。

        也可以看看:

        常量字段值

      • TYPE_INT_BGR

        公共靜態最終詮釋TYPE_INT_BGR

        表示具有8位RGB顏色組件的圖像,對應於Windows或Solaris風格的BGR顏色模型,藍色,綠色和紅色包裝爲整數像素。沒有阿爾法。該圖像有一個DirectColorModel。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_3BYTE_BGR

        公共靜態最終詮釋TYPE_3BYTE_BGR

        表示具有8位RGB顏色分量的圖像,對應於Windows風格的BGR顏色模型),其顏色爲藍色,綠色和紅色,存儲爲3個字節。沒有阿爾法。該圖像有一個 ComponentColorModel。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_4BYTE_ABGR

        公共靜態最終詮釋TYPE_4BYTE_ABGR

        表示具有8位RGBA顏色組件的圖像,其顏色爲藍色,綠色和紅色,以3字節和1字節的alpha存儲。圖像有一個ComponentColorModel與阿爾法。該圖像中的顏色數據被認爲不是預乘alpha。字節數據按每個像素內從低位到高位字節地址的順序A,B,G,R以單個字節陣列交錯。

        也可以看看:

        常量字段值

      • TYPE_4BYTE_ABGR_PRE

        公共靜態最終詮釋TYPE_4BYTE_ABGR_PRE

        表示具有8位RGBA顏色組件的圖像,其顏色爲藍色,綠色和紅色,以3字節和1字節的alpha存儲。圖像有一個ComponentColorModel與阿爾法。該圖像中的顏色數據被認爲是預乘alpha。字節數據按每個像素內從低位到高位字節地址的順序A,B,G,R以單個字節陣列交錯。

        也可以看看:

        常量字段值

      • TYPE_USHORT_565_RGB

        public static final int TYPE_USHORT_565_RGB

        代表具有5-6-5 RGB顏色分量(5位紅色,6位綠色,5位藍色)且不含Alpha的圖像。這個圖像有一個DirectColorModel。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_USHORT_555_RGB

        公共靜態最終詮釋TYPE_USHORT_555_RGB

        代表具有5-5-5 RGB顏色分量(5位紅色,5位綠色,5位藍色)且不含阿爾法的圖像。這個圖像有一個DirectColorModel。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_BYTE_GRAY

        公共靜態最終詮釋TYPE_BYTE_GRAY

        表示未經過索引的無符號字節灰度圖像。這張圖片有ComponentColorModel一個CS_GRAY ColorSpace。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_USHORT_GRAY

        公共靜態最終詮釋TYPE_USHORT_GRAY

        表示未經過編碼的短灰度圖像,未編制索引)。這張圖片有ComponentColorModel一個CS_GRAY ColorSpace。當具有非透明alpha的數據存儲在此類圖像中時,必須將顏色數據調整爲非預乘形式,並丟棄alpha,如AlphaComposite文檔中所述 。

        也可以看看:

        常量字段值

      • TYPE_BYTE_BINARY

        公共靜態最終詮釋TYPE_BYTE_BINARY
        表示一個不透明的字節打包的1,2或4位圖像。圖像有一個IndexColorModel沒有阿爾法。當此類型用作接受參數但不帶 參數imageType的 BufferedImage構造 imageType函數的ColorModel參數時,將IndexColorModel使用默認sRGB中的兩種顏色創建1位圖像 ColorSpace:{0,0,0}和{255,255,255 }。

        每像素2或4位的圖像可以通過構造函數來BufferedImage構造,該構造ColorModel函數通過提供ColorModel具有適當的地圖尺寸的參數來構造 參數 。

        每像素8位的圖像應該使用圖像類型TYPE_BYTE_INDEXEDTYPE_BYTE_GRAY 根據其類型 ColorModel

        當顏色數據存儲在此類型的圖像中時,顏色貼圖中最接近的顏色由該項確定,IndexColorModel並存儲結果索引。根據顏色IndexColorModel映射中的顏色,可能會導致逼近和丟失alpha或顏色分量 。

        也可以看看:

        常量字段值

      • TYPE_BYTE_INDEXED

        公共靜態最終詮釋TYPE_BYTE_INDEXED
        表示索引字節圖像。當這個類型被用作 帶有參數但沒有參數imageTypeBufferedImage構造imageType函數的ColorModel參數時, IndexColorModel用256色6/6/6彩色立方體調色板創建一個,其餘的顏色從216-255填充到灰度值中默認的sRGB ColorSpace。

        當顏色數據存儲在此類型的圖像中時,顏色貼圖中最接近的顏色由該項確定,IndexColorModel並存儲結果索引。根據顏色IndexColorModel映射中的顏色,可能會導致逼近和丟失alpha或顏色分量 。

        也可以看看:

        常量字段值

    • 構造函數的細節

      • 的BufferedImage

        public BufferedImage(int width,
                     int高度,
                     int imageType,
                     IndexColorModel  cm)
        構造一個BufferedImage預定義的圖像類型:TYPE_BYTE_BINARY或TYPE_BYTE_INDEXED。

        如果圖像類型是TYPE_BYTE_BINARY,則使用顏色模型中的條目數來確定圖像是否應具有每像素1,2或4位。如果顏色模型具有1或2個條目,則圖像將具有每像素1位。如果它具有3或4個條目,則每個像素具有2位的圖像。如果它具有5到16個條目,則圖像將具有每像素4位。否則,將拋出IllegalArgumentException。

        參數:

        width - 創建的圖像的寬度

        height - 創建圖像的高度

        imageType - 創建的圖像的類型

        cmIndexColorModel創建的圖像

        拋出:

        IllegalArgumentException - 如果imageType不是TYPE_BYTE_BINARY或TYPE_BYTE_INDEXED,或者imageType是TYPE_BYTE_BINARY,並且顏色映射有超過16個條目。

        也可以看看:

        TYPE_BYTE_BINARY, TYPE_BYTE_INDEXED

      • 的BufferedImage

        公共BufferedImage(ColorModel  cm,
                      WritableRaster  柵格,
                     布爾isRasterPremultiplied,
                     散列表 <?,?>屬性)

        BufferedImage用指定的 ColorModel和構造一個新的Raster。如果在數量和類型的帶SampleModel的 Raster不匹配的數量和由所要求的類型的ColorModel表示其顏色和alpha分量,一個RasterFormatException被拋出。該方法可以將顏色Raster數據乘以或除以alpha以匹配中的alphaPremultiplied狀態ColorModel。屬性 BufferedImage可以通過傳入一HashtableStringObject 成對來建立。

        參數:

        cmColorModel爲新的圖像

        rasterRaster用於圖像數據

        isRasterPremultiplied- 如果true光柵中的數據已經預乘alpha。

        propertiesHashtable中 StringObject對。

        拋出:

        RasterFormatException-如果在數量和類型的帶SampleModel的 Raster不匹配所要求的數量和類型ColorModel,以表示其顏色和alpha分量。

        IllegalArgumentException- 如果 raster不符合cm

        也可以看看:

        ColorModel, Raster, WritableRaster

    • 方法細節

      • getColorModel

        public  ColorModel  getColorModel()

        返回ColorModel

        指定者:

        getColorModel 在界面中 RenderedImage

        返回:

        ColorModel這 BufferedImage

      • getRaster

        public  WritableRaster  getRaster()

        返回WritableRaster

        返回:

        WriteableRaster這 BufferedImage

      • getAlphaRaster

        public  WritableRaster  getAlphaRaster()

        返回一個WritableRaster表示BufferedImage具有ColorModel支持單獨空間Alpha通道的對象(如ComponentColorModel和)的 alpha通道DirectColorModelnull如果沒有與ColorModel此圖像中的Alpha通道關聯,則返回。此方法假設,對於所有 ColorModel對象以外 IndexColorModel,如果ColorModel 支撐件α,存在被存儲爲圖像數據的最後一個頻帶的單獨alpha通道。如果圖像使用IndexColorModel在查找表中具有alpha 的圖像,則此方法返回, null因爲沒有空間離散的Alpha通道。此方法創建一個新的 WritableRaster,但共享數據數組。

        返回:

        WritableRaster或者null如果 BufferedImage沒有與其關聯的Alpha通道ColorModel

      • 的getRGB

        public int getRGB(int x,
                 int y)
        返回默認RGB顏色模型(TYPE_INT_ARGB)和默認sRGB顏色空間中的整數像素。如果此默認模型與圖像不匹配,則會發生顏色轉換ColorModel。使用此方法時,返回數據中的每個顏色分量只有8位精度。

        ArrayOutOfBoundsException如果座標不在邊界內,則可能拋出 一個。但是,顯式邊界檢查不能保證。

        參數:

        x - 從默認RGB顏色模型和sRGB顏色空間中獲取像素的像素的X座標

        y - 默認RGB顏色模型和sRGB顏色空間中像素的Y座標

        返回:

        默認RGB顏色模型中的整數像素和默認sRGB顏色空間。

        也可以看看:

        setRGB(int, int, int), setRGB(int, int, int, int, int[], int, int)

      • 的getRGB

        public int [] getRGB(int startX,
                   int startY,
                   int w,
                   int h,
                   int [] rgbArray,
                   int偏移量,
                   int scansize)
        從部分圖像數據中返回默認RGB顏色模型(TYPE_INT_ARGB)和默認sRGB顏色空間中的整數像素數組。如果默認模型與圖像不匹配,則會進行顏色轉換 ColorModel。使用此方法時,返回數據中的每個顏色分量只有8位精度。使用圖像中的指定座標(x,y),可以通過以下方式訪問ARGB像素:

         

            pixel = rgbArray [offset +(y-startY)* scansize +(x-startX)]; 

        一個ArrayOutOfBoundsException,如果該區域不在邊界可能拋出。但是,顯式邊界檢查不能保證。

        參數:

        startX - 起始X座標

        startY - 起始Y座標

        w - 區域的寬度

        h - 地區的高度

        rgbArray- 如果沒有null,則在這裏寫入rgb像素

        offset - 抵消了 rgbArray

        scansize - 掃描線跨度 rgbArray

        返回:

        RGB像素陣列。

        也可以看看:

        setRGB(int, int, int), setRGB(int, int, int, int, int[], int, int)

      • setRGB

        public void setRGB(int x,
                  int y,
                  int rgb)
        將其中的像素設置爲BufferedImage指定的RGB值。該像素被假定爲默認的RGB顏色模型,TYPE_INT_ARGB和默認的sRGB顏色空間。對於具有an的圖像,IndexColorModel選擇具有最接近顏色的索引。

        ArrayOutOfBoundsException如果座標不在邊界內,則可能拋出 一個。但是,顯式邊界檢查不能保證。

        參數:

        x - 要設置的像素的X座標

        y - 要設置的像素的Y座標

        rgb - RGB值

        也可以看看:

        getRGB(int, int), getRGB(int, int, int, int, int[], int, int)

      • setRGB

        public void setRGB(int startX,
                  int startY,
                  int w,
                  int h,
                  int [] rgbArray,
                  int偏移量,
                  int scansize)
        將默認RGB顏色模型(TYPE_INT_ARGB)和默認sRGB顏色空間中的整數像素數組設置爲圖像數據的一部分。如果默認模型與圖像不匹配,則會發生顏色轉換 ColorModel。使用此方法時,返回數據中的每個顏色分量只有8位精度。使用此圖像中的指定座標(x,y),可以通過以下方式訪問ARGB像素:
            pixel = rgbArray [offset +(y-startY)* scansize +(x-startX)];
         
        警告:不會發生抖動。

        一個ArrayOutOfBoundsException,如果該區域不在邊界可能拋出。但是,顯式邊界檢查不能保證。

        參數:

        startX - 起始X座標

        startY - 起始Y座標

        w - 區域的寬度

        h - 該地區的高度

        rgbArray - RGB像素

        offset - 抵消了 rgbArray

        scansize - 掃描線跨度 rgbArray

        也可以看看:

        getRGB(int, int), getRGB(int, int, int, int, int[], int, int)

      • 的getWidth

        public int getWidth()

        返回。的寬度BufferedImage

        指定者:

        getWidth 在界面中 RenderedImage

        返回:

        這個的寬度 BufferedImage

      • 的getHeight

        public int getHeight()

        返回。的高度BufferedImage

        指定者:

        getHeight 在界面中 RenderedImage

        返回:

        這個的高度 BufferedImage

      • 的getSource

        public  ImageProducer  getSource()

        返回產生圖像像素的對象。

        指定者:

        getSource 在班上 Image

        返回:

        ImageProducer是,用於產生像素爲這個圖象。

        也可以看看:

        ImageProducer

      • 的getProperty

        public  Object  getProperty(String  name,
                          ImageObserver  observer)

        按名稱返回圖像的屬性。各個屬性名稱由各種圖像格式定義。如果沒有爲特定圖像定義屬性,則此方法返回該 UndefinedProperty字段。如果此圖像的屬性尚未知道,則此方法返回 null並在ImageObserver稍後通知該對象。應該使用屬性名稱“comment”來存儲可選評論,該評論可以作爲圖像,其來源或作者的描述呈現給用戶。

        指定者:

        getProperty 在班上 Image

        參數:

        name - 屬性名稱

        observerImageObserver接收有關圖像信息的通知

        返回:

        一個Object是由指定引用的屬性namenull如果這個圖像的性質尚不清楚。

        拋出:

        NullPointerException - 如果屬性名稱爲空。

        也可以看看:

        ImageObserver, Image.UndefinedProperty

      • 的getProperty

        public  Object  getProperty(String  name)

        按名稱返回圖像的屬性。

        指定者:

        getProperty 在界面中 RenderedImage

        參數:

        name - 屬性名稱

        返回:

        一個Object是稱爲由指定的屬性name

        拋出:

        NullPointerException - 如果屬性名稱爲空。

        也可以看看:

        Image.UndefinedProperty

      • 的createGraphics

        public  Graphics2D  createGraphics()

        創建一個Graphics2D,可以用來繪製這個BufferedImage

        返回:

        一個Graphics2D,用於繪製到這個圖像。

      • getSubimage

        public  BufferedImage  getSubimage(int x,
                                int y,
                                int w,
                                int h)

        返回由指定的矩形區域定義的子圖像。返回的BufferedImage共享與原始圖像具有相同的數據陣列。

        參數:

        x - 指定矩形區域左上角的X座標

        y - 指定矩形區域左上角的Y座標

        w - 指定的矩形區域的寬度

        h - 指定的矩形區域的高度

        返回:

        一個BufferedImage是這個子圖像 BufferedImage

        拋出:

        RasterFormatException- 如果指定的區域不包含在此範圍內BufferedImage

      • 值isAlphaPremultiplied

        public boolean isAlphaPremultiplied()

        返回alpha是否已經預乘。false如果沒有alpha,它會返回。

        返回:

        true如果alpha已經預乘; false除此以外。

      • coerceData

        public void coerceData(boolean isAlphaPremultiplied)

        強制數據匹配isAlphaPremultiplied變量中指定的狀態 。它可以將顏色柵格數據乘以或除以alpha,或者如果數據處於正確的狀態,則不做任何事情。

        參數:

        isAlphaPremultipliedtrue如果alpha已經預乘; false除此以外。

      •  

        public  String  toString()

        返回StringBufferedImage對象及其值的表示形式 。

        覆蓋:

        toString 在班上 Object

        返回:

        一個String表示此 BufferedImage

      • getSources

        public  Vector < RenderedImage > getSources()

        爲此返回一VectorRenderedImage對象,它們是圖像數據的直接來源,而不是這些直接來源的來源BufferedImagenull如果BufferedImage 沒有關於其直接來源的信息,則返回此方法。Vector如果BufferedImage沒有直接來源,它將返回一個空白。

        指定者:

        getSources 在界面中 RenderedImage

        返回:

        一個Vector包含此BufferedImage對象的圖像日期的直接來源,或者null如果它BufferedImage沒有關於其直接來源的信息,或者 如果它沒有直接來源,Vector則爲空 BufferedImage 。

      • getPropertyNames

        public  String [] getPropertyNames()

        返回由getProperty(String) or 識別的名稱數組 null,如果沒有識別屬性名稱。

        指定者:

        getPropertyNames 在界面中 RenderedImage

        返回:

        一個String包含所有可getProperty(String)識別的屬性名稱的數組; 或者null如果沒有識別屬性名稱。

      • getMinX

        public int getMinX()

        返回此的最小x座標 BufferedImage。這總是零。

        指定者:

        getMinX 在界面中 RenderedImage

        返回:

        這個的最小x座標 BufferedImage

      • getMinY

        public int getMinY()

        返回此的最小y座標 BufferedImage。這總是零。

        指定者:

        getMinY 在界面中 RenderedImage

        返回:

        這個的最小y座標 BufferedImage

      • getSampleModel

        public  SampleModel  getSampleModel()

        返回SampleModel與此關聯的內容 BufferedImage

        指定者:

        getSampleModel 在界面中 RenderedImage

        返回:

        SampleModel這 BufferedImage

      • getNumXTiles

        public int getNumXTiles()

        返回x方向上的圖塊數量。這永遠是一個。

        指定者:

        getNumXTiles 在界面中 RenderedImage

        返回:

        x方向上的瓦片數量。

      • getNumYTiles

        public int getNumYTiles()

        返回y方向上的圖塊數量。這永遠是一個。

        指定者:

        getNumYTiles 在界面中 RenderedImage

        返回:

        y方向上的瓦片數量。

      • getMinTileX

        public int getMinTileX()

        返回x方向上的最小圖塊索引。這總是零。

        指定者:

        getMinTileX 在界面中 RenderedImage

        返回:

        x方向上的最小瓦片索引。

      • getMinTileY

        public int getMinTileY()

        返回y方向上的最小圖塊索引。這總是零。

        指定者:

        getMinTileY 在界面中 RenderedImage

        返回:

        y方向的最小瓦片索引。

      • getTileWidth

        public int getTileWidth()

        以像素爲單位返回圖塊寬度。

        指定者:

        getTileWidth 在界面中 RenderedImage

        返回:

        瓦片寬度以像素爲單位。

      • getTileHeight

        public int getTileHeight()

        以像素爲單位返回平鋪高度。

        指定者:

        getTileHeight 在界面中 RenderedImage

        返回:

        瓷磚高度以像素爲單位。

      • getTileGridXOffset

        public int getTileGridXOffset()

        返回平鋪網格相對於原點的x偏移量,例如平鋪(0,0)位置的x座標。這總是零。

        指定者:

        getTileGridXOffset 在界面中 RenderedImage

        返回:

        瓦片網格的x偏移量。

      • getTileGridYOffset

        public int getTileGridYOffset()

        返回tile網格相對於原點的y偏移量,例如tile(0,0)位置的y座標。這總是零。

        指定者:

        getTileGridYOffset 在界面中 RenderedImage

        返回:

        tile網格的y偏移量。

      • getTile

        公共  柵格  getTile(int tileX,
                     int tileY)

        返回平鋪(tileX,  tileY)。請注意,tileXtileY在索引放入瓦陣列,而不是像素位置。在Raster 返回的是活的,這意味着如果圖像改變,它被更新。

        指定者:

        getTile 在界面中 RenderedImage

        參數:

        tileX - 瓦片數組中所請求瓦片的x索引

        tileY - 瓦片陣列中請求的瓦片的y索引

        返回:

        一個Raster是由參數tileX和參數定義的圖塊tileY

        拋出:

        ArrayIndexOutOfBoundsException-如果兩個 tileXtileY不等於0

      • 的getData

        公共  柵格  getData()

        將圖像作爲一個大圖塊返回。在Raster 返回的是如果圖像改變時它不會更新的圖像數據的副本。

        指定者:

        getData 在界面中 RenderedImage

        返回:

        一個Raster是圖像數據的副本。

        也可以看看:

        setData(Raster)

      • 的getData

        公共  柵格  getData(矩形  矩形)

        計算並返回一個任意的區域 BufferedImage。在Raster返回的是圖像數據的副本,如果圖像改變時它不會更新。

        指定者:

        getData 在界面中 RenderedImage

        參數:

        rectBufferedImage要返回的區域。

        返回:

        一個Raster是指定區域的圖像數據的副本BufferedImage

        也可以看看:

        setData(Raster)

      • 了CopyData

        公共  WritableRaster  copyData(WritableRaster  outRaster)

        計算任意的矩形區域 BufferedImage並將其複製到指定的區域 WritableRaster。要計算的區域是從指定的邊界確定的 WritableRaster。指定的 WritableRaster必須具有 SampleModel與此圖像兼容的圖像。如果 outRasternullWritableRaster創建一個適當的。

        指定者:

        copyData 在界面中 RenderedImage

        參數:

        outRaster- a WritableRaster保存圖像的返回部分,或null

        返回:

        對提供或創建的引用 WritableRaster

      • 使用setData

        public void setData(Raster  r)

        將圖像的矩形區域設置爲指定的內容,Raster r假定其位於與座標軸相同的座標空間中 BufferedImage。該操作被剪切到邊界BufferedImage

        指定者:

        setData 在界面中 WritableRenderedImage

        參數:

        r - 指定的 Raster

        也可以看看:

        getData(), getData(Rectangle)

      • addTileObserver

        public void addTileObserver(TileObserver  to)

        添加一個tile觀察者。如果觀察者已經存在,它會收到多個通知。

        指定者:

        addTileObserver 在界面中 WritableRenderedImage

        參數:

        to - 指定的 TileObserver

      • removeTileObserver

        public void removeTileObserver(TileObserver  to)

        刪除一個tile觀察者。如果觀察員沒有註冊,則沒有任何反應。如果觀察員註冊了多個通知,則現在註冊一個通知。

        指定者:

        removeTileObserver 在界面中 WritableRenderedImage

        參數:

        to- 指定的TileObserver

      • isTileWritable

        公共布爾isTileWritable(int tileX,
                             int tileY)

        返回平鋪當前是否簽出寫入。

        指定者:

        isTileWritable 在界面中 WritableRenderedImage

        參數:

        tileX - 瓦片的x索引。

        tileY - 瓦片的y索引。

        返回:

        true如果由指定索引指定的圖塊檢出寫入; false 除此以外。

        拋出:

        ArrayIndexOutOfBoundsException-如果兩個 tileXtileY不等於0

      • getWritableTileIndices

        public  Point [] getWritableTileIndices()

        返回一個Point對象數組,指示檢出哪些圖塊用於寫入。null如果沒有簽出,則返回。

        指定者:

        getWritableTileIndices 在界面中 WritableRenderedImage

        返回:

        一個Point數組,用於指示檢出寫入的null圖塊,或者沒有檢出圖塊進行寫入。

      • hasTileWriters

        public boolean hasTileWriters()
        返回是否檢出任何圖塊進行寫入。語義上等同於
         (getWritableTileIndices()!= null)。
         

        指定者:

        hasTileWriters 在界面中 WritableRenderedImage

        返回:

        true如果任何磁貼檢出寫入; false除此以外。

      • getWritableTile

        公共  WritableRaster  getWritableTile(int tileX,
                                     int tileY)

        檢查一個瓷磚的寫作。TileObservers當瓷磚從沒有作家到有一個作家時,所有註冊的 人都會收到通知。

        指定者:

        getWritableTile 在界面中 WritableRenderedImage

        參數:

        tileX - 瓦片的x索引

        tileY - 瓦片的y索引

        返回:

        一個WritableRaster是由指定索引指示的瓦片將被檢出寫入。

      • releaseWritableTile

        public void releaseWritableTile(int tileX,
                               int tileY)

        放棄寫入瓦片的權限。如果調用者繼續寫入瓦片,結果是不確定的。對此方法的調用應該只會出現在與調用相匹配的對中getWritableTile(int, int)。任何其他導致未定義的結果。所有註冊的TileObservers 人都會在有一位作家從沒有作家的情況下得到通知。

        指定者:

        releaseWritableTile 在界面中 WritableRenderedImage

        參數:

        tileX - 瓦片的x索引

        tileY - 瓦片的y索引

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