Java Can';无法从资源中获取图像
我无法从Eclipse项目的另一个包中获取图像!我看到了这个帖子 我的代码是CreateTableOnPDF.java:Java Can';无法从资源中获取图像,java,pdfbox,Java,Pdfbox,我无法从Eclipse项目的另一个包中获取图像!我看到了这个帖子 我的代码是CreateTableOnPDF.java: 288 ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); 289 InputStream input = classLoader.getResourceAsStream("images/sun.png"); 290 PDJpeg img = new PDJpeg
288 ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
289 InputStream input = classLoader.getResourceAsStream("images/sun.png");
290 PDJpeg img = new PDJpeg(doc, input);
我得到了这个例外:
Exception in thread "main" java.lang.IllegalStateException:
at org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg.setPropertiesFromAWT(PDJpeg.java:132)
at org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg.<init>(PDJpeg.java:113)
at MainClasses.CreateTableOnPDF.main(CreateTableOnPDF.java:290)
线程“main”java.lang.IllegalStateException中的异常:
位于org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg.setPropertiesFromAWT(PDJpeg.java:132)
位于org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg(PDJpeg.java:113)
位于MainClasses.CreateTableOnPDF.main(CreateTableOnPDF.java:290)
我不知道我做错了什么?也许是我在显示器前花了很多时间
以下是我的项目结构:
感谢您的关注和时间 您是否将
输入作为null
?如果是这样,请尝试路径为“”。/images/sun.png”
请检查文档,您应该放置JPEG数据,而不是png数据
public PDJpeg(PDDocument doc, InputStream is) throws IOException
参数:
doc
-创建图像作为其一部分的文档
是
——包含JPEG数据的流
抛出:
IOException
-如果读取JPEG数据时出错
我也遇到了同样的异常情况!:(您确定它是映像…它抛出的IllegalStateException不是NullPointer如果对此进行更改:ClassLoader ClassLoader=Thread.currentThread().getContextClassLoader();InputStream in=ClassLoader.getResourceAsStream(“images/logo.jpg”);成功了!我刚刚看到了我的错误!我尝试用png图像创建PDJpeg对象!感谢您的宝贵时间。您可以将PDPixelMap用于png文件。第二个参数获取一个BuffereImage,这是您通过ImageIO.read()获得的。