- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有一个解决方案,可以将字符串插入 XHTML 文档并将结果打印为报告。我的雇主问我们是否可以从他们的 SQL 数据库(存储为字节数组)中提取图像以插入到报告中。
我使用 FlyingSaucer 作为 XHTML 解释器,我一直在使用 Java DOM 修改我存储在报告生成器包中的预存储报告。
我目前唯一能想到的解决方案是构建图像,将它们保存为文件,在构建的报告中将文件链接到 img 标签(或背景图像)中,打印报告,然后删除文件。这看起来真的很草率,我想这会非常耗时。
我不禁觉得一定有更优雅的解决方案。将字节数组插入 html 有什么建议吗?
最佳答案
读取图像并将其转换为 Base64 编码形式:
InputStream image = getClass().getClassLoader().getResourceAsStream("image.png");
String encodedImage = BaseEncoding.base64().encode(ByteStreams.toByteArray(image));
我用过 BaseEncoding
和 ByteStreams
来自 Google Guava .
更改 Document
对象中 img
元素的 src
属性。
Document doc = ...; // get Document from XHTMLPanel.getDocument() or create
// new one using DocumentBuilderFactory
doc.getElementById("myImage").getAttributes().getNamedItem("src").setNodeValue("data:image/png;base64," + encodedImage);
不幸的是,FlyingSaucer 不支持开箱即用的 DataURI,因此您必须创建自己的 ReplacedElementFactory
。阅读Using Data URLs for embedding images in Flying Saucer generated PDFs文章 - 它包含一个完整的解决方案。
关于java - IO 问题 - 字节数组图像转换为 XHTML(FlyingSaucer),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20068494/
当我通过 Flyingsaucer 将 html 文件导出为 PDF 时,CSS 样式“word-wrap:break-word”不起作用。 我在css文件中定义了一个类 .class-name{
我正在尝试使用 flyingsaucer提供从 xhtml 生成的 pdf,但我无法运行 servlet 示例。 所有其他 flyingsaucer 示例对我来说都很好,但我需要它作为 servlet
FS 发行版与 IText 2.0.8 捆绑在一起,鉴于 2.x.x 范围内有许多最新版本,我想知道是否有人对最新版本有任何经验。我猜 FS 也有可能与 3.x.x.x +...兼容 有人知道/确认吗
我有一个解决方案,可以将字符串插入 XHTML 文档并将结果打印为报告。我的雇主问我们是否可以从他们的 SQL 数据库(存储为字节数组)中提取图像以插入到报告中。 我使用 FlyingSaucer 作
有什么方法可以在使用 Flying Saucer 生成的 PDF 中使用 javascript(在打开文档时立即显示打印对话框)? 最佳答案 请检查这个link ,(第 14 页,共 27 页)这说明
环境是:flyingsaucer r8 和 itext 2.0.8 我要用 flyingsaucer 和 itext 创建 pdf 文件,我添加了 table-layout:fixed;word-wr
我将 Flying Saucer 与 IText 结合使用,以便从 HTML 文件生成 PDF,特别是利用 org.xhtmlrenderer.pdf.ITextRenderer 类。我的代码很简单。
我想使用 FlyingSaucer 将包含阿拉伯字符的 HTML 页面转换为 PDF 文件,但生成的 PDF 不包含组合字符并向后打印输出。 HTML:
我正在使用飞碟 xhtmlrenderer 构建 pdf 文档。到目前为止一切正常——现在我们应该在 pdf 中生成阿拉伯语文本。Xhtmlrenderer 正在以相反的顺序呈现阿拉伯文本。 我在互联
我在使用找到的简单示例创建 PDF 时遇到问题 here .这是我第一次尝试使用它,我尝试了一些东西并进行了大量搜索,但没有找到产生错误的原因。错误源自 renderer.setDocument(ur
我正在使用带有以下 HTML 模板的 FlyingSaucer 9 生成带有运行标题的 PDF: @page { size: 793px 1122px; border: 1px sol
我正在尝试使用 FlyingSaucer 将带有居中图像的 xhtml 解析为 PDF。 图像使用 css 居中: img.center { display: block; marg
我是一名优秀的程序员,十分优秀!