当flying-saucer使用模板文件加载html代码 生成PDF时,如果css样式使用了相对路径这会出现加载不上的问题,
类似问题
http://stackoverflow.com/questions/9722038/flying-saucer-itext-pdf-in-servlet-not-finding-css-file
<link href="/css/home.css" type="text/css" rel="stylesheet"/>
解决方法:
1.将stylesheet 的连接地址写成完整的URL地址,如http://..../css/home.css即可
<link href="http://..../css/home.css" type="text/css" rel="stylesheet"/>
本应用地址生成代码:
HttpServletRequest request = getRequest();
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path
+ "/";
2.也可以写成是绝对地址
<link href="file:/E:\\home.css" type="text/css" rel="stylesheet"/>
3.可以再读取模板是就将css读出来,拼接模板文件中
buf.append("<head><style>");
buf.append(readFile(getServletContext().getRealPath("/PDFservlet.css"), "UTF-8"));
buf.append("</style></head>");
4.使用document生成PDF时,可以设置相对url地址
-
Your document has
<link href="my.css" ..
-
The css is located at
http://example.com/something/my.css
-
You should call
renderer.setDocument(doc, "http://example.com/something/page.html");
public static void
html
To
PDF
(String
pdf
Path, String
html
Path) throws Exception {
try {
IText
Renderer renderer = new
IText
Renderer();
IText
FontResolver fontResolver = renderer.getFontResolver();
OutputStre
验证XML Worker支持代码:Tags class。如果支持标记,在这种情况下为true,请查看默认实现。这是由the HorizontalRule class处理的。但是,我们发现不支持您的用例,因此一种方法是将该代码用作蓝图。 (如下所示)您还可以继承特定的标记类并覆盖End()方法as done here。无论哪种方式,您所做的只是实现自定义标签处理器。如果支持不标记,则需要通过继承Ab...
使用的jar文件xmlworker-5.5.11.jar
itext
pdf
-5.5.11.jar以下为测试代码package com.test;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.
File
;import java.io.
File
InputStream;impor...
我们的应用程序类似,我们有一个RTF编辑器(TinyMCE),输出是通过
iText
PDF
生成
的
PDF
。我们希望
HTML
尽可能整洁,理想情况下,仅使用
iText
的
HTML
Worker支持的
HTML
标签。 TinyMCE可以执行其中的一些操作,但是在某些情况下,最终用户可以提交确实被搞砸的
HTML
,这可能会破坏
iText
生成
PDF
的能力。我们结合使用了jSoup和jTidy +
CSS
Parser来...
我是一个.NET开发人员,所以该代码是在C#。但是你应该可以轻松地翻译以下内容。
iText
是一个
PDF
优先库,而[X]
HTML
解析相当复杂,所以它在这方面不是全功能。每当解析[X]
HTML
,事情不会你期望的特定标签的方式,你应该遵循的基本步骤是:验证XML Worker支持标签:Tags class。如果标签是支持,在这种情况下,这是真实的,看看默认的实现。这是由the HorizontalRul...
我试图通过使用其方法在
iText
的帮助下将
html
转换为
pdf
Html
Converter.convertTo
Pdf
(
html
String,
pdf
Document, converterProp);但似乎这项服务并不尊重
html
中定义的
css
属性。这是我的
html
字符串String
html
= ""+ ""+ ""+ "* {-webkit-box-sizing: border-box;-moz-...
<br />Flaying Saucer 是一个纯Java渲染X
HTML
+
CSS
2.1的渲染器,包括tables, forms, the box model, lists, selectors, images, and text formatting.不支持脚本,它可以输出为image格式,或
PDF
格式。<br />最简单的应用就是写一个X
HTML
并指定
CSS
,用它按格式渲染这个文件,用于显示或存为图片。<br /> <br />index.x
html
里面带了
CSS
格式。<br /> <br />1、例