簡體   English   中英

Java ImageIO以ppm格式讀取圖像返回null

[英]Java ImageIO read image in ppm format return null

javax.imageio.ImageIO是否完全讀取PPM格式的圖像(例如rawbits P6)?

BufferedImage rawimage = ImageIO.read(new File(getClass().getResource("/lena.ppm").getFile()));

沒有異常,但rawimagenull png和jpg等其他格式也可以正常工作。

我有一個笨拙的解決方法,通過剝離標題並逐行掃描ppm文件。 我假設JAVA JAI(現在是JDK的一部分)將直接使用。

我在這里想念什么嗎?

據我所知,JAI仍然不是JDK / JRE的一部分,它是單獨下載/安裝的。 而且,是的,您將需要JAI ImageIO(或其他第三方插件,例如我自己的 )讀取PPM,但不支持立即使用。

對於不支持的格式, ImageIO.read()將返回null 這是預期的/已記錄的行為。

您可以使用ImageIO.getReaderFormatNames()查詢已安裝支持的格式。

無法本地解碼PPM文件:“ 圖像I / O內置了對GIF,PNG,JPEG,BMP和WBMP的支持。” 但是您也許可以找到具有此支持的庫(或插件),只需搜索諸如Java ppm imagereader之類的東西。

使用此頁面上的ImageIO插件(LGPL許可), PPM(便攜式PixMap),PGM,PBM圖像文件java圖像讀取器/寫入器,您可以讀取/寫入rawbit PPM文件。

JAR文件至少需要以下文件

META-INF/
META-INF/MANIFEST.MF
META-INF/services/
META-INF/services/javax.imageio.spi.ImageReaderSpi
META-INF/services/javax.imageio.spi.ImageWriterSpi
uk/
uk/co/
uk/co/mmscomputing/
uk/co/mmscomputing/imageio/
uk/co/mmscomputing/imageio/ppm/
uk/co/mmscomputing/imageio/ppm/PPMConstants.class
uk/co/mmscomputing/imageio/ppm/PPMImageReader.class
uk/co/mmscomputing/imageio/ppm/PPMImageReaderSpi.class
uk/co/mmscomputing/imageio/ppm/PPMImageWriter.class
uk/co/mmscomputing/imageio/ppm/PPMImageWriterSpi.class

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM