使用itext-pdf向pdf文件添加图像

nc1teljy  于 2021-07-09  发布在  Java
关注(0)|答案(3)|浏览(563)

我正在使用itext生成pdf。但是当我尝试在pdf中添加图像时, Image schoolLogo = Image.getInstance(new URL(timetableResource.getImageUrl())); document.add(schoolLogo); 但我也犯了个错误
http状态500-服务器返回url的http响应代码:400:http://139.59.72.150:8080/sms/attachments/23/42/school/23/23/vandana international school logo.png
类型异常报告
消息服务器为url:(myurl)返回了http响应代码:400
说明服务器遇到内部错误,无法完成此请求。
例外
java.io.ioexception:服务器为url:(myurl)sun.net返回http响应代码:400。www.protocol.http.httpurlconnection.getinputstream0(httpurlconnection。java:1876)太阳网。www.protocol.http.httpurlconnection.getinputstream(httpurlconnection。java:1474)java.net.url.openstream(url。java:1045)com.lowagie.text.image.getinstance(未知源)

unftdfkk

unftdfkk1#

400https://docs.oracle.com/javase/8/docs/api/java/net/httpurlconnection.html#http_bad_request
显然是连接错误,请检查url是否有效,您可以正常登录。

a64a0gku

a64a0gku2#

我已经解决了这个问题,问题是与空间的网址。我已经用“% 20”替换空白空间,而且工作得很好。

qfe3c7zg

qfe3c7zg3#

请考虑切换到itext7。正如bruno已经指出的,您当前使用的版本不再受支持。供您参考,itext7添加图像的方法是:

String FOX = "path/to/resource/fox.png";
String DOG = "path/to/resource/dog.png";

Image fox = new Image(ImageDataFactory.create(FOX));
Image dog = new Image(ImageDataFactory.create(DOG));
Paragraph p = new Paragraph("The quick brown ")
                .add(fox)
                .add(" jumps over the lazy ")
                .add(dog);
document.add(p);

有一个完整的jumpstart教程,针对那些已经知道itext如何工作并且需要一些迁移到itext7的指针的人。
去看看吧http://developers.itextpdf.com/content/itext-7-jump-start-tutorial/chapter-1-introducing-basic-building-blocks

相关问题