java - 将 HTML 转换为图像获取 java.io.IOException:流已关闭
问题描述
import gui.ava.html.Html2Image;
public class ToImage {
public static void main(String[] args) throws IOException {
File inputFile = new File("C:\\Users\\sam\\Desktop\\index.html");
Html2Image imageGenerator = new Html2Image();
imageGenerator.getParser().load(inputFile);
imageGenerator.getImageRenderer().setAutoHeight(false);
imageGenerator.getImageRenderer().saveImage(new File("C:\\Users\\sam\\Desktop\\new.png"));
}
}
java.io.IOException: Stream closed at java.io.BufferedInputStream.getInIfOpen(BufferedInputStream.java:159)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at org.xhtmlrenderer.css.parser.Lexer.zzRefill(Lexer.java:1634)
at org.xhtmlrenderer.css.parser.Lexer.yylex(Lexer.java:1865)
at org.xhtmlrenderer.css.parser.CSSParser.next(CSSParser.java:1798)
at org.xhtmlrenderer.css.parser.CSSParser.la(CSSParser.java:1810)
at org.xhtmlrenderer.css.parser.CSSParser.stylesheet(CSSParser.java:159)
at org.xhtmlrenderer.css.parser.CSSParser.parseStylesheet(CSSParser.java:89)
at org.xhtmlrenderer.context.StylesheetFactoryImpl.parse(StylesheetFactoryImpl.java:78)
at org.xhtmlrenderer.context.StylesheetFactoryImpl.parse(StylesheetFactoryImpl.java:95)
at org.xhtmlrenderer.context.StylesheetFactoryImpl.getStylesheet(StylesheetFactoryImpl.java:174)
at org.xhtmlrenderer.context.StyleReference.readAndParseAll(StyleReference.java:123)
at org.xhtmlrenderer.context.StyleReference.setDocumentContext(StyleReference.java:107)
at org.xhtmlrenderer.swing.Java2DRenderer.setDocument(Java2DRenderer.java:317)
at org.xhtmlrenderer.swing.Java2DRenderer.getImage(Java2DRenderer.java:265)
at com.htmltopdf.HtmlToPdfConverter.ToImage.main(ToImage.java:35)
我无法找到发生这种情况的原因,一切似乎都很好。
任何帮助将不胜感激。
解决方案
推荐阅读
- java - 如何在单个 X 窗口 (Java) 中动态更改哪个客户端处理事件?
- windows - Windows In Box / Hello Credential Provider api
- unit-testing - TypeError:无法读取 Vue Jest 测试中未定义的属性“getters”
- android - 使用 Visual Studio 2019 将 Android 密钥库转换为 pem 格式
- php - php中的word2vec
- mongodb - 在 Talend 工具中将 ObjectID 插入到 mongo 数组元素中
- javascript - 将 Typescript 对象推送到角度对象数组
- c# - ASP.NET Core 2.2 是否支持使用 Microsoft 帐户进行外部登录?
- java - 为什么@autowired 不适用于同一包中的服务以及如何修复它?
- java - 需要一个无法找到的 Repository 类型的 bean