问题标签 [flying-saucer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在飞碟中设置基本网址,同时将 HTML 渲染为 PDF?
我正在尝试使用飞碟将 HTML 页面呈现为 PDF。HTML 在内存中创建并作为
问题是我<img src="images.jpg"/>
在 HTML 中,它没有在最终的 HTML 中呈现。该图像位于resources
包中的文件夹中。
我尝试使用以下设置基本 url,但没有成功:
java - 使用飞碟从 XHtml 源文本生成 PDF 的代理问题
我在使用飞碟从 XHTML 源生成 PDF 时遇到了一些问题。
我使用以下工作代码:
我想在我的源代码中包含一些图像以生成 pdf。这意味着有一个指向图像的href。
似乎图像的 href 必须是完整的 URL,否则找不到图像。在我的本地环境中,使用图像生成 pdf 没有问题,但是在代理后面的远程服务器场上,我没有图像。
- 它无法识别来自网络的 URL (https://mydomain.com/mysite/...)
- 使用服务器名称 + 端口可以工作,但很脏,因为我有一个服务器场(2 个具有不同端口的集群)。所以我永远无法确定哪个服务器正在提供数据。如果我指向单个服务器并且如果该服务器出现故障,我将不再拥有该图像。
- 我试图在服务器 jvm.properties 上配置一个 http/https 代理(用于 tomcat 配置),但它不起作用。
我的配置:
tomcat5.5.28 jre1.6_13 使用 https 进行所有导航 使用代理 java.args=-Duser.language=fr -Duser.region=FRx -Xms1024m -Xmx1024m -XX:MaPermSize=128m -Dhttp.proxyHost=myProxy -Dhttp .proxyPort=80 -Dnetworkaddress.cache.ttl=300 -DnonProxyHosts=myServerHost -Dhttps.nonProxyHosts=myServerHost-Dhttp.nonProxyHosts=myServerHost
在此先感谢您的帮助。
itext - 飞碟在第一页隐藏页眉和页脚
我一直在玩飞碟 R8,并试图从我的 PDF的首页隐藏页眉和页脚。
我按照该提示尝试遵循 W3C 的内容规范:我的 print.css 中的 element() (W3C 运行元素)。描述以下应该解决我的问题:
但似乎这还没有在 R8 中实现。所以我用set-string方法尝试了上面的方法。
但是什么都没有被渲染,content: string()似乎被破坏了,因为我放在那里的任何东西都不会被渲染:
那么有没有人知道如何让它工作?
java - 内联图像与临时文件(Java XHTML->PDF 生成)
我有一个项目需要生成 PDF 文件。在这个 PDF 中,我必须插入一段文本以及四到五个大图像(大约 800 像素 * 1000 像素)。为了使其灵活,我选择将 FreeMarker 与 XHTMLRenderer(飞碟)结合使用。
我现在面临几个选择:
- 创建图像并将它们作为临时文件保存到磁盘。然后
.xhtml
使用 FreeMarker 处理模板(将其保存到磁盘)并将处理后的.xhtml
文件 URL 传递给 XHTMLRenderer 以生成 PDF。所有这些创建的文件(除了 PDF)都将使用File.createTempFile
. 这将允许 FreeMarker 从磁盘中提取图像(就好像它们是在 XHTML 中链接的图像一样) - 处理
.xhtml
模板并将其保存在内存中。将图像作为 base64 编码的数据 url 传递给模板。这将消除保存任何临时文件的需要,因为 FreeMarker 的输出可以直接传递给 XHTMLRenderer。
Base64 编码图像 URL 示例(一个小文件夹图标):
我的主要问题是哪种技术更好?创建大量临时文件是否不好(是否会产生大量开销)?创建如此大的 base64 编码字符串时,我可能会耗尽内存吗?
java - 并行/同时加载 AWT-Image,然后替换 Placeholder-Image
我正在使用FlyingSaucer,这是一个纯基于 java 的 XHTML-Renderer,它本机集成到 swing 中。为了显示图像,它提供了一个 ReplacedElementFactory,它获取一个 W3C-DOM-Element 并可以用一个 ReplacedElement 替换它。
显示图像的实现是从 ReplacedElementFactory 返回一个 java.awt.Image,通过 ImageIO.read(..) 加载,然后渲染。这意味着整个加载是 EDT 线程中的阻塞操作,在加载多个外部图像时冻结 UI...
我想知道如何返回一个表示“图像正在加载”的 awt.Image,将加载分派给一个线程,然后,我的问题来了,用实际加载的图像替换返回的、已经渲染的 Placeholder-ImageIsLoading。那么有没有可能改变现有的 awt.Image 然后强制它重新绘制/刷新/无论如何?
有什么建议吗?
ruby-on-rails - 有没有办法让acts_as_flying_saucer 在不调用render_pdf 的情况下保存文件?
正如标题所说,我使用运行良好的 Rails gem,但我想将 pdf 单独保存到一个文件夹中。有没有办法在不调用 render_pdf 的情况下做到这一点?
这是行不通的:
这确实适用于另一个页面:
java - 如何将内存中的 HTML 代码渲染到图像?
我发现http://code.google.com/p/flying-saucer/
哪个应该是最适合我的项目的解决方案。但文件似乎只能从文件中读取。
但我的情况是我想从代码中渲染,我不想保存一个临时的 XML 文件。例如renderToImageAutoSize
在Graphics2DRenderer
static java.awt.image.BufferedImage renderToImageAutoSize(java.lang.String url, int width, int bufferedImageType) 从文档自动创建图像的静态实用方法,其中高度根据文档内容确定。
有没有办法让渲染器直接从内存中的 HTML 代码读取?
javascript - 从浏览器打印 PDF 文档
我有动态生成 XHTML 的 Web 应用程序。然后使用 Flying Saucer 将 XHTML 转换为 PDF。然后将文档流式传输到浏览器并在线提供。
部分要求是在没有用户干预的情况下自动打印生成的 PDF,然后将其关闭。我以前从未遇到过这样的功能。我可以使用 JavaScript 从网页打印 PDF 吗?考虑到我没有物理文件位置!
任何有关如何解决此问题的想法将不胜感激
html - 使用 CSS 的页面方向
我有一个使用 HTML 和 CSS 创建打印视图的任务。然后在服务器上对该视图进行解析并呈现为 PDF。然后将文档呈现给用户并假脱机到 A5 打印机。
其中一个要求是将第一页方向设置为横向,将所有其他页面方向设置为纵向
我已经创建了视图,以及解析 HTML 和 CSS 以使用Flying Saucer创建 PDF 的 servlet 。但是,我在页面方向方面遇到了一些问题。我使用以下 CSS 来控制页面布局
我确实得到了第一页的正确布局。然而,所有其他页面显示为 A3 横向(打印文本的边界)打印在 A4 纸上(页面的实际方向)。
任何想法我在这里做错了什么
java - HTML 到 PDF 的转换 - “无法加载 XML 资源”错误
我正在尝试使用飞碟和 iText 将严格的 XHTML 转换为 PDF。我已经验证了 XHTML 并且输入和输出文件的路径是精确的。我不知道为什么这会在 renderer.setDocument("file:/c:/example/First.html") 行上引发异常。
我的课:
我的例外:
错误:''我没有创建文件。错误:无法加载 XML 资源(使用 TRaX 转换器)。java.lang.NullPointerException
在 flysaucerpdf.FirstDoc 的 org.xhtmlrenderer.pdf.ITextRenderer.layout(ITextRenderer.java:152) 的 org.xhtmlrenderer.layout.BoxBuilder.createRootBox(BoxBuilder.java:81) 的线程“main”java.lang.NullPointerException 中的异常。主要(FirstDoc.java:31)
我的 XHTML:
有什么帮助吗?