【问题标题】:Loading image in Spring application在 Spring 应用程序中加载图像
【发布时间】:2011-05-30 08:55:45
【问题描述】:

我的 Spring 应用程序中有这种解决方案:

http://www.java2s.com/Code/Java/PDF-RTF/AddingPNGimagetoPdfdocument.htm

无论如何,我的问题是我的图片位于不同的文件夹中,例如 WEB-INF/layout/picture.gif。 我不让它工作。可能有什么限制吗?

【问题讨论】:

  • 图像 imageRight = Image.getInstance("path");不工作

标签: image spring itext


【解决方案1】:

将您的图片作为资源移动到类路径中,这样您就可以轻松地将其加载到 iText。为此,您应该将图像文件复制到类所在的目录中,以便将图像打包到 JAR 中,或者如果这是 JAva webapp (war),则位于 /WEB-INF/classes 目录中。

com.lowagie.itext.Image 的工厂方法将java.net.URL 作为参数,所以你可以这样做:

URL imageUrl = getClass().getResource("/your/image/package/image.png");
Image image = Image.getInstance(imageUrl);

【讨论】:

  • 是否必须在 jar 文件中才能成为资源?
  • 你如何打包你的应用程序?这是罐子还是战争还是别的什么?
【解决方案2】:

此答案假设您尝试直接从网络浏览器访问图像。


浏览器可以直接访问的图片必须位于WEB-INF目录之外。

例如在 maven 项目中

-project/main/src
  -webapp
    -images  <- in the same parent directory like META-INF and WEB-INF
    -META-INF
    -WEB-INF

【讨论】:

  • 不用 Maven 怎么样?如何格式化路径?例如../布局?我正在使用 Windows
  • MJgirl:不管怎样,不是 Maven 也是一样:把图片(最好是图片文件夹)放在 META-INF 和 WEB-INF 子文件夹所在的同一个目录下。 (Maven只与上面的结构相关(project/main/src/webapp))
猜你喜欢
  • 1970-01-01
  • 2014-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多