當前位置: 首頁>>代碼示例>>Java>>正文


Java RasterFormatException類代碼示例

本文整理匯總了Java中java.awt.image.RasterFormatException的典型用法代碼示例。如果您正苦於以下問題:Java RasterFormatException類的具體用法?Java RasterFormatException怎麽用?Java RasterFormatException使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


RasterFormatException類屬於java.awt.image包,在下文中一共展示了RasterFormatException類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: parseString

import java.awt.image.RasterFormatException; //導入依賴的package包/類
@Override
public SortedMap<Integer, String> parseString(String fieldString) {
    CharStream is = CharStreams.fromString(fieldString);
    DrawGrammarLexer lex = new DrawGrammarLexer(is);
    CommonTokenStream tokens = new CommonTokenStream(lex);
    DrawGrammarParser parser = new DrawGrammarParser(tokens);
    palette = Palette.makeDefaultPalette("DarkSpectrum");
    final SortedMap<Integer, String> resultMap;
    try {
        resultMap = parser.root().map;
    } catch (RecognitionException | NullPointerException | StringIndexOutOfBoundsException | RasterFormatException re) {
        //Something wrong with the parsing do not update.
        return null;
    }
    return resultMap;
}
 
開發者ID:fusiled,項目名稱:bitbox,代碼行數:17,代碼來源:PainterLogic.java

示例2: getSprite

import java.awt.image.RasterFormatException; //導入依賴的package包/類
public BufferedImage getSprite(final int index) {
  final String imageCacheKey = MessageFormat.format("{0}_{1}", this.hashCode, index);
  if (ImageCache.SPRITES.containsKey(imageCacheKey)) {
    return ImageCache.SPRITES.get(imageCacheKey);
  }

  if (this.getImage() == null) {
    log.warning("no image defined for sprite '" + this.getName() + "'");
    return null;
  }

  final Point position = this.getLocation(index);
  try {
    final BufferedImage smallImage = this.getImage().getSubimage(position.x, position.y, this.spriteWidth, this.spriteHeight);
    ImageCache.SPRITES.put(imageCacheKey, smallImage);
    return smallImage;
  } catch (final RasterFormatException rfe) {
    log.warning("could not read sprite of size [" + this.spriteWidth + "x" + this.spriteHeight + " at position [" + position.x + "," + position.y + "] from sprite'" + this.getName() + "'");
    return null;
  }
}
 
開發者ID:gurkenlabs,項目名稱:litiengine,代碼行數:22,代碼來源:Spritesheet.java

示例3: createWritableChild

import java.awt.image.RasterFormatException; //導入依賴的package包/類
public WritableRaster createWritableChild(int parentX, int parentY,
                                          int w, int h, int childMinX,
                                          int childMinY, int[] bandList)
{
  if (parentX < minX || parentX + w > minX + width
      || parentY < minY || parentY + h > minY + height)
    throw new RasterFormatException("Child raster extends beyond parent");

  SampleModel sm = (bandList == null) ?
    sampleModel :
    sampleModel.createSubsetSampleModel(bandList);

  return new CairoSurface(sm, this,
                          new Rectangle(childMinX, childMinY, w, h),
                          new Point(sampleModelTranslateX + childMinX - parentX,
                                    sampleModelTranslateY + childMinY - parentY));
}
 
開發者ID:vilie,項目名稱:javify,代碼行數:18,代碼來源:CairoSurface.java

示例4: createWritableChild

import java.awt.image.RasterFormatException; //導入依賴的package包/類
public WritableRaster createWritableChild(int parentX, int parentY,
                                          int w, int h, int childMinX,
                                          int childMinY, int[] bandList)
{
  if (parentX < minX || parentX + w > minX + width
      || parentY < minY || parentY + h > minY + height)
    throw new RasterFormatException("Child raster extends beyond parent");
  
  SampleModel sm = (bandList == null) ?
    sampleModel :
    sampleModel.createSubsetSampleModel(bandList);

  return new CairoSurface(sm, this,
                          new Rectangle(childMinX, childMinY, w, h),
                          new Point(sampleModelTranslateX + childMinX - parentX,
                                    sampleModelTranslateY + childMinY - parentY));
}
 
開發者ID:nmldiegues,項目名稱:jvm-stm,代碼行數:18,代碼來源:CairoSurface.java

示例5: verify

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Verify that the layout parameters are consistent with
 * the data.  If strictCheck
 * is false, this method will check for ArrayIndexOutOfBounds conditions.  If
 * strictCheck is true, this method will check for additional error
 * conditions such as line wraparound (width of a line greater than
 * the scanline stride).
 * @return   String   Error string, if the layout is incompatible with
 *                    the data.  Otherwise returns null.
 */
private void verify (boolean strictCheck) {
    // Make sure data for Raster is in a legal range
    for (int i=0; i < dataOffsets.length; i++) {
        if (dataOffsets[i] < 0) {
            throw new RasterFormatException("Data offsets for band "+i+
                                            "("+dataOffsets[i]+
                                            ") must be >= 0");
        }
    }

    int maxSize = 0;
    int size;

    for (int i=0; i < numDataElements; i++) {
        size = (height-1)*scanlineStride + (width-1)*pixelStride +
            dataOffsets[i];
        if (size > maxSize) {
            maxSize = size;
        }
    }
    if (data.length < maxSize) {
        throw new RasterFormatException("Data array too small (should be "+
                                      maxSize+" )");
    }
}
 
開發者ID:openjdk,項目名稱:jdk7-jdk,代碼行數:36,代碼來源:ByteComponentRaster.java

示例6: verify

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Verify that the layout parameters are consistent with
 * the data.  If strictCheck
 * is false, this method will check for ArrayIndexOutOfBounds conditions.
 * If strictCheck is true, this method will check for additional error
 * conditions such as line wraparound (width of a line greater than
 * the scanline stride).
 * @return   String   Error string, if the layout is incompatible with
 *                    the data.  Otherwise returns null.
 */
private void verify (boolean strictCheck) {
    // Make sure data for Raster is in a legal range
    if (dataBitOffset < 0) {
        throw new RasterFormatException("Data offsets must be >= 0");
    }

    int lastbit = (dataBitOffset
                   + (height-1) * scanlineStride * 8
                   + (width-1) * pixelBitStride
                   + pixelBitStride - 1);
    if (lastbit / 8 >= data.length) {
        throw new RasterFormatException("raster dimensions overflow " +
                                        "array bounds");
    }
    if (strictCheck) {
        if (height > 1) {
            lastbit = width * pixelBitStride - 1;
            if (lastbit / 8 >= scanlineStride) {
                throw new RasterFormatException("data for adjacent" +
                                                " scanlines overlaps");
            }
        }
    }
}
 
開發者ID:openjdk,項目名稱:jdk7-jdk,代碼行數:35,代碼來源:BytePackedRaster.java

示例7: verify

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Verify that the layout parameters are consistent with
 * the data.  If strictCheck
 * is false, this method will check for ArrayIndexOutOfBounds conditions.  If
 * strictCheck is true, this method will check for additional error
 * conditions such as line wraparound (width of a line greater than
 * the scanline stride).
 * @return   String   Error string, if the layout is incompatible with
 *                    the data.  Otherwise returns null.
 */
private void verify (boolean strictCheck) {
    int maxSize = 0;
    int size;

    for (int i=0; i < numDataElements; i++) {
        size = (height-1)*scanlineStride + (width-1)*pixelStride +
            dataOffsets[i];
        if (size > maxSize) {
            maxSize = size;
        }
    }
    if (data.length < maxSize) {
        throw new RasterFormatException("Data array too small (should be "+
                                      maxSize+" )");
    }
}
 
開發者ID:openjdk,項目名稱:jdk7-jdk,代碼行數:27,代碼來源:ByteInterleavedRaster.java

示例8: verify

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Verify that the layout parameters are consistent with
 * the data.  If strictCheck
 * is false, this method will check for ArrayIndexOutOfBounds conditions.  If
 * strictCheck is true, this method will check for additional error
 * conditions such as line wraparound (width of a line greater than
 * the scanline stride).
 * @return   String   Error string, if the layout is incompatible with
 *                    the data.  Otherwise returns null.
 */
private void verify (boolean strictCheck) {
    if (dataOffsets[0] < 0) {
        throw new RasterFormatException("Data offset ("+dataOffsets[0]+
                                        ") must be >= 0");
    }

    int maxSize = 0;
    int size;

    for (int i=0; i < numDataElements; i++) {
        size = (height-1)*scanlineStride + (width-1)*pixelStride +
            dataOffsets[i];
        if (size > maxSize) {
            maxSize = size;
        }
    }
    if (data.length < maxSize) {
        throw new RasterFormatException("Data array too small (should be "+
                                      maxSize
                                      +" but is "+data.length+" )");
    }
}
 
開發者ID:openjdk,項目名稱:jdk7-jdk,代碼行數:33,代碼來源:IntegerComponentRaster.java

示例9: cropSelection

import java.awt.image.RasterFormatException; //導入依賴的package包/類
private BufferedImage cropSelection() {
  int w = rectSelection.width, h = rectSelection.height;
  if (w <= 0 || h <= 0) {
    return null;
  }
  int x = rectSelection.x;
  int y = rectSelection.y;
  if (!isLocalScreen && scr_img_scale != 1) {
    x = (int) (x / scr_img_scale);
    y = (int) (y / scr_img_scale);
    w = (int) (w / scr_img_scale);
    h = (int) (h / scr_img_scale);

  }
  BufferedImage crop = new BufferedImage(w, h, scr_img_type);
  Graphics2D crop_g2d = crop.createGraphics();
  try {
    crop_g2d.drawImage(scr_img_original.get().getSubimage(x, y, w, h), null, 0, 0);
  } catch (RasterFormatException e) {
    log.error("cropSelection: RasterFormatException", e.getMessage());
  }
  crop_g2d.dispose();
  return crop;
}
 
開發者ID:RaiMan,項目名稱:SikuliX2,代碼行數:25,代碼來源:Capture.java

示例10: createWritableChild

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Creates a Writable subRaster given a region of the Raster. The x and y
 * coordinates specify the horizontal and vertical offsets
 * from the upper-left corner of this Raster to the upper-left corner
 * of the subRaster.  A subset of the bands of the parent Raster may
 * be specified.  If this is null, then all the bands are present in the
 * subRaster. A translation to the subRaster may also be specified.
 * Note that the subRaster will reference the same
 * DataBuffer as the parent Raster, but using different offsets.
 * @param x               X offset.
 * @param y               Y offset.
 * @param width           Width (in pixels) of the subraster.
 * @param height          Height (in pixels) of the subraster.
 * @param x0              Translated X origin of the subraster.
 * @param y0              Translated Y origin of the subraster.
 * @param bandList        Array of band indices.
 * @exception RasterFormatException
 *            if the specified bounding box is outside of the parent Raster.
 */
public WritableRaster createWritableChild(int x, int y,
                                          int width, int height,
                                          int x0, int y0,
                                          int[] bandList) {
    if (x < this.minX) {
        throw new RasterFormatException("x lies outside the raster");
    }
    if (y < this.minY) {
        throw new RasterFormatException("y lies outside the raster");
    }
    if ((x+width < x) || (x+width > this.minX + this.width)) {
        throw new RasterFormatException("(x + width) is outside of Raster");
    }
    if ((y+height < y) || (y+height > this.minY + this.height)) {
        throw new RasterFormatException("(y + height) is outside of Raster");
    }

    SampleModel sm;

    if (bandList != null)
        sm = sampleModel.createSubsetSampleModel(bandList);
    else
        sm = sampleModel;

    int deltaX = x0 - x;
    int deltaY = y0 - y;

    return new ByteComponentRaster(sm,
                                   dataBuffer,
                                   new Rectangle(x0, y0, width, height),
                                   new Point(sampleModelTranslateX+deltaX,
                                             sampleModelTranslateY+deltaY),
                                   this);
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:54,代碼來源:ByteComponentRaster.java

示例11: createCompatibleWritableRaster

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Creates a Raster with the same layout but using a different
 * width and height, and with new zeroed data arrays.
 */
public WritableRaster createCompatibleWritableRaster(int w, int h) {
    if (w <= 0 || h <=0) {
        throw new RasterFormatException("negative "+
                                      ((w <= 0) ? "width" : "height"));
    }

    SampleModel sm = sampleModel.createCompatibleSampleModel(w, h);

    return new ByteComponentRaster(sm , new Point(0,0));

}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:16,代碼來源:ByteComponentRaster.java

示例12: ByteBandedRaster

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 *  Constructs a ByteBandedRaster with the given sampleModel,
 *  DataBuffer, and parent. DataBuffer must be a DataBufferShort and
 *  SampleModel must be of type BandedSampleModel.
 *  When translated into the base Raster's
 *  coordinate system, aRegion must be contained by the base Raster.
 *  Origin is the coordinate in the new Raster's coordinate system of
 *  the origin of the base Raster.  (The base Raster is the Raster's
 *  ancestor which has no parent.)
 *
 *  Note that this constructor should generally be called by other
 *  constructors or create methods, it should not be used directly.
 *  @param sampleModel     The SampleModel that specifies the layout.
 *  @param dataBuffer      The DataBufferShort that contains the image data.
 *  @param aRegion         The Rectangle that specifies the image area.
 *  @param origin          The Point that specifies the origin.
 *  @param parent          The parent (if any) of this raster.
 */
public ByteBandedRaster(SampleModel sampleModel,
                        DataBuffer dataBuffer,
                        Rectangle aRegion,
                        Point origin,
                        ByteBandedRaster parent) {

    super(sampleModel, dataBuffer, aRegion, origin, parent);
    this.maxX = minX + width;
    this.maxY = minY + height;

    if (!(dataBuffer instanceof DataBufferByte)) {
       throw new RasterFormatException("ByteBandedRaster must have" +
            "byte DataBuffers");
    }
    DataBufferByte dbb = (DataBufferByte)dataBuffer;

    if (sampleModel instanceof BandedSampleModel) {
        BandedSampleModel bsm = (BandedSampleModel)sampleModel;
        this.scanlineStride = bsm.getScanlineStride();
        int bankIndices[] = bsm.getBankIndices();
        int bandOffsets[] = bsm.getBandOffsets();
        int dOffsets[] = dbb.getOffsets();
        dataOffsets = new int[bankIndices.length];
        data = new byte[bankIndices.length][];
        int xOffset = aRegion.x - origin.x;
        int yOffset = aRegion.y - origin.y;
        for (int i = 0; i < bankIndices.length; i++) {
           data[i] = stealData(dbb, bankIndices[i]);
           dataOffsets[i] = dOffsets[bankIndices[i]] +
               xOffset + yOffset*scanlineStride + bandOffsets[i];
        }
    } else {
        throw new RasterFormatException("ByteBandedRasters must have"+
            "BandedSampleModels");
    }
    verify();
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:56,代碼來源:ByteBandedRaster.java

示例13: createWritableChild

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Creates a Writable subraster given a region of the raster.  The x and y
 * coordinates specify the horizontal and vertical offsets
 * from the upper-left corner of this raster to the upper-left corner
 * of the subraster.  A subset of the bands of the parent Raster may
 * be specified.  If this is null, then all the bands are present in the
 * subRaster. A translation to the subRaster may also be specified.
 * Note that the subraster will reference the same
 * DataBuffers as the parent raster, but using different offsets.
 * @param x               X offset.
 * @param y               Y offset.
 * @param width           Width of the subraster.
 * @param height          Height of the subraster.
 * @param x0              Translated X origin of the subraster.
 * @param y0              Translated Y origin of the subraster.
 * @param bandList        Array of band indices.
 * @exception RasterFormatException
 *            if the specified bounding box is outside of the parent raster.
 */
public WritableRaster createWritableChild (int x, int y,
                                           int width, int height,
                                           int x0, int y0,
                                           int bandList[]) {

    if (x < this.minX) {
        throw new RasterFormatException("x lies outside raster");
    }
    if (y < this.minY) {
        throw new RasterFormatException("y lies outside raster");
    }
    if ((x+width < x) || (x+width > this.width + this.minX)) {
        throw new RasterFormatException("(x + width) is outside raster") ;
    }
    if ((y+height < y) || (y+height > this.height + this.minY)) {
        throw new RasterFormatException("(y + height) is outside raster");
    }

    SampleModel sm;

    if (bandList != null)
        sm = sampleModel.createSubsetSampleModel(bandList);
    else
        sm = sampleModel;

    int deltaX = x0 - x;
    int deltaY = y0 - y;

    return new ByteBandedRaster(sm,
                                dataBuffer,
                                new Rectangle(x0,y0,width,height),
                                new Point(sampleModelTranslateX+deltaX,
                                          sampleModelTranslateY+deltaY),
                                this);
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:55,代碼來源:ByteBandedRaster.java

示例14: createCompatibleWritableRaster

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Creates a Raster with the same layout but using a different
 * width and height, and with new zeroed data arrays.
 */
public WritableRaster createCompatibleWritableRaster(int w, int h) {
    if (w <= 0 || h <=0) {
        throw new RasterFormatException("negative "+
                                      ((w <= 0) ? "width" : "height"));
    }

    SampleModel sm = sampleModel.createCompatibleSampleModel(w,h);

    return new ByteBandedRaster(sm, new Point(0,0));
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:15,代碼來源:ByteBandedRaster.java

示例15: createWritableChild

import java.awt.image.RasterFormatException; //導入依賴的package包/類
/**
 * Creates a Writable subRaster given a region of the Raster. The x and y
 * coordinates specify the horizontal and vertical offsets
 * from the upper-left corner of this Raster to the upper-left corner
 * of the subRaster.  A subset of the bands of the parent Raster may
 * be specified.  If this is null, then all the bands are present in the
 * subRaster. A translation to the subRaster may also be specified.
 * Note that the subRaster will reference the same
 * DataBuffers as the parent Raster, but using different offsets.
 * @param x               X offset.
 * @param y               Y offset.
 * @param width           Width (in pixels) of the subraster.
 * @param height          Height (in pixels) of the subraster.
 * @param x0              Translated X origin of the subraster.
 * @param y0              Translated Y origin of the subraster.
 * @param bandList        Array of band indices.
 * @exception RasterFormatException
 *            if the specified bounding box is outside of the parent Raster.
 */
public WritableRaster createWritableChild(int x, int y,
                                          int width, int height,
                                          int x0, int y0,
                                          int[] bandList) {
    if (x < this.minX) {
        throw new RasterFormatException("x lies outside the raster");
    }
    if (y < this.minY) {
        throw new RasterFormatException("y lies outside the raster");
    }
    if ((x+width < x) || (x+width > this.minX + this.width)) {
        throw new RasterFormatException("(x + width) is outside of Raster");
    }
    if ((y+height < y) || (y+height > this.minY + this.height)) {
        throw new RasterFormatException("(y + height) is outside of Raster");
    }

    SampleModel sm;

    if (bandList != null)
        sm = sampleModel.createSubsetSampleModel(bandList);
    else
        sm = sampleModel;

    int deltaX = x0 - x;
    int deltaY = y0 - y;

    return new ShortComponentRaster(sm,
                                   dataBuffer,
                                   new Rectangle(x0, y0, width, height),
                                   new Point(sampleModelTranslateX+deltaX,
                                             sampleModelTranslateY+deltaY),
                                   this);
}
 
開發者ID:SunburstApps,項目名稱:OpenJSharp,代碼行數:54,代碼來源:ShortComponentRaster.java


注:本文中的java.awt.image.RasterFormatException類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。