当前位置: 首页 > 知识库问答 >
问题:

使用FOP 1.1和Java无法以PDF格式显示图像

赏梓
2023-03-14

我已经彻底搜索了谷歌,似乎找不到我的问题的解决方案……

我正在使用Apache FOP 1.1和Java从Java类生成PDF文件。这个Java项目从JAR文件运行。我使用JAR本身外部的图像。用于生成PDF的XSL文件包含以下内容:

<fo:external-graphic src="file:///C:/images/image.jpg" width="7.5in" />

根据大量搜索/阅读,我尝试了src属性的许多不同变体:

src="file:///C:/images/image.jpg"
src="C:/images/image.jpg"
src="url('file:///C:/images/image.jpg')"
src="url('C:/images/image.jpg')"

都没有成功...

现在,这是令人困惑的部分。我在Eclipse IDE中进行开发,使用src属性的变体时:

src="C:/images/image.jpg"
src="url('C:/images/image.jpg')"

使用嵌入的图像正确创建PDF。

当从JAR文件运行时,我不知道是什么阻止了图像的显示...

提前感谢!(希望如此)

戴文

共有2个答案

壤驷俊逸
2023-03-14

我知道这是一个旧线程,但我也遇到了类似的问题,最终找到了部分修复。这是两件事的组合:

    < li >开发环境和部署环境中的JVM之间的差异(对我来说是原始sun...err oracle与ibm websphere捆绑java) < li>IBM JVM不喜欢索引的PNG文件。我一把它转换成RGB,它就工作了。

这是我得到的错误消息,当我手动运行fop.bat文件与webSphere jvm:

SEVERE: Image not available. URI: /tmp/image.png. Reason: org.apache.xmlgraphics.image.loader.ImageException: I/O error while extracting image metadata: Error reading PNG metadata (See position 30:182)

顺便说一下,我用的是fop 1.0,java 1.6是7.0 (java 1.6)

希望这能帮助其他人!

苏墨竹
2023-03-14

语法

<fo:external-graphic src="url('C:/images/image.jpg')" content-height="100%" content-width="100%"/>

无论是从Eclipse还是从JAR,对我来说都非常好。找到问题所在了吗?

 类似资料:
  • 使用飞碟以PDF格式打印图像。 超文本标记语言代码: 当我使用飞碟将HTML转换为PDF时。生成的PDF不会打印图像。 我需要使用任何特定的软件包来打印PDF格式的图像吗。如果你有任何问题,请告诉我。

  • 问题内容: 如何利用System.out.print(ln/f)一种方式将我的输出格式化为表格? 如果要使用printf,我应该指定哪种格式来获得以下结果? 我要打印的示例表: ``` n result1 result2 time1 time2 5 1000.00 20000.0 1000ms 1250ms 5 1000.00 20000.0 1000ms 1250ms 5 1000.00 200

  • 问题内容: 我在印度编号系统中显示以下代码。 正在获取此输出:。 我需要这样的输出:。 请帮我解决这个问题。 问题答案: 对于整数: 对于浮点数:

  • 我有下表 我想使用python将int转换成矩阵,看起来像下面这样: 我能知道从哪里开始吗?我使用pandas读取两个数据帧并合并它们以创建我所显示的初始表(一个有两列)。 我使用的代码如下: 打印输出为: 索引(['列B'], dtype='对象')索引(['TypeA','TypeA','TypeA','TypeA','TypeA','TypeB','TypeB','TypeC','TypeC

  • 1.我有一个格式需要在JSP中显示。其中的行应按行显示。 我有一个格式,但不能张贴它的图像,请让我知道如何可以上传的格式。 这些数据应该以相同的格式从数据库中获取。使用arraylist、JSP。 现在我已经试着把我正在尝试的代码,请帮助我的答案,谢谢你提前!!!

  • 问题内容: 我有以下情况: 提供输出 Tue May 31 00:00:00 SGT 2019 但我希望输出是 31/05/2019 我需要在这里使用解析,因为日期需要按日期而不是字符串进行排序。 有任何想法吗 ?? 问题答案: 怎么样: