javax.imageio.ImageReader#canReadRaster ( )源码实例Demo

下面列出了javax.imageio.ImageReader#canReadRaster ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: gcs   文件: Filter.java
/**
 * Finds a suitable image reader for a format.
 *
 * @param formatName The format to search for.
 * @param errorCause The probably cause if something goes wrong.
 * @return The image reader for the format.
 * @throws MissingImageReaderException if no image reader is found.
 */
protected static ImageReader findImageReader(String formatName, String errorCause) throws MissingImageReaderException
{
    Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName(formatName);
    ImageReader reader = null;
    while (readers.hasNext())
    {
        reader = readers.next();
        if (reader != null && reader.canReadRaster())
        {
            break;
        }
    }
    if (reader == null)
    {
        throw new MissingImageReaderException("Cannot read " + formatName + " image: " + errorCause);
    }
    return reader;
}
 
源代码2 项目: sambox   文件: JPEGFactory.java
private static BufferedImage readJpeg(Object fileOrStream) throws IOException
{
    Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName("JPEG");
    ImageReader reader = null;
    while (readers.hasNext())
    {
        reader = readers.next();
        if (reader.canReadRaster())
        {
            break;
        }
    }
    requireIOCondition(nonNull(reader), "Cannot find an ImageIO reader for JPEG image");

    try (ImageInputStream iis = ImageIO.createImageInputStream(fileOrStream))
    {
        reader.setInput(iis);
        ImageIO.setUseCache(false);
        return reader.read(0);
    }
    finally
    {
        reader.dispose();
    }
}
 
源代码3 项目: sambox   文件: Filter.java
/**
 * Finds a suitable image reader for a format.
 *
 * @param formatName The format to search for.
 * @param errorCause The probably cause if something goes wrong.
 * @return The image reader for the format.
 * @throws MissingImageReaderException if no image reader is found.
 */
protected static ImageReader findImageReader(String formatName, String errorCause)
        throws MissingImageReaderException
{
    Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName(formatName);
    ImageReader reader = null;
    while (readers.hasNext())
    {
        reader = readers.next();
        if (nonNull(reader) && reader.canReadRaster())
        {
            break;
        }
    }
    if (reader == null)
    {
        throw new MissingImageReaderException(
                "Cannot read " + formatName + " image: " + errorCause);
    }
    return reader;
}
 
源代码4 项目: gcs   文件: JPEGFactory.java
private static Raster readJPEGRaster(InputStream stream) throws IOException
{
    // find suitable image reader
    Iterator<ImageReader> readers = ImageIO.getImageReadersByFormatName("JPEG");
    ImageReader reader = null;
    while (readers.hasNext())
    {
        reader = readers.next();
        if (reader.canReadRaster())
        {
            break;
        }
    }

    if (reader == null)
    {
        throw new MissingImageReaderException(
                "Cannot read JPEG image: a suitable JAI I/O image filter is not installed");
    }

    ImageInputStream iis = null;
    try
    {
        iis = ImageIO.createImageInputStream(stream);
        reader.setInput(iis);
        ImageIO.setUseCache(false);
        return reader.readRaster(0, null);
    }
    finally
    {
        if (iis != null)
        {
            iis.close();
        }
        reader.dispose();
    }
}
 
源代码5 项目: dss   文件: ImageUtils.java
private static ImageReader getRasterReader(Iterator<ImageReader> readers) {
	ImageReader reader = null;
	// pick the first available ImageReader that reads raster
	while (readers.hasNext()) {
		reader = readers.next();
		if (reader.canReadRaster()) {
			break;
		}
	}
	return reader;
}