gpt4 book ai didi

java - Flying Saucer 中的外部 CSS

转载 作者:技术小花猫 更新时间:2023-10-29 11:44:35 25 4
gpt4 key购买 nike

我想知道如何在 Flying-Saucer 中包含外部 CSS。在此之前 THB 我检查了 StackOverflow 中的所有可用链接,但它们没有帮助.这就是为什么把这个变成我自己的原因。

TestCSS.xhtmlTestCSS.html 的重命名版本。所以它们的内容是一样的。下面(图 1)是我在 Eclipse IDE 中的元素结构。如果我运行 TestCSS.html,它会在浏览器中将页面结果显示为图 2。

以下是不作为外部 CSS 工作的代码:

This one Working :
<style>
.redFontClass
{
color : red;
}
.blueFontClass
{
color : blue;
}
</style>

This one NOT Working :
<link href="RedCSS.css" rel="stylesheet" type="text/css" />

This one NOT Working :
<link rel="stylesheet"
href="http://localhost:8888/Fly-Sauccer-Web/css/RedCSS.css" type="text/css" />

This one NOT Working :
<link href="file:///C:/Users/Joseph.M/WorkPlace_Struts2/Fly-Sauccer-Web/WebContent/css/RedCSS.css" rel="stylesheet" type="text/css" />

我尝试了所有方法,包括 xhtml 中的 css 的绝对路径。但没有应用 css。请帮助我解决问题。

图 1

enter image description here

图 2

enter image description here

RedCSS.css

.fontClass
{
color : red;
}

TestCSS.html

<html>
<head>
<link href="file:///C:/Users/Joseph.M/WorkPlace_Struts2/Fly-Sauccer-Web/WebContent/css/RedCSS.css" rel="stylesheet" type="text/css" />
</head>
<body>
<b>This Should come assss <span class = "fontClass" >Red</span> </b>
</body>
</html>

Java 代码:

public static void main(String[] args) throws Exception{

// Path of Input File
String inputFile = "C:\\Users\\Joseph.M\\WorkPlace_Struts2\\Fly-Sauccer-Web\\WebContent\\TestCSS.xhtml";
// Path of Output File
String outputFile = "C:\\Users\\Joseph.M\\WorkPlace_Struts2\\Fly-Sauccer-Web\\output.pdf";
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();

DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
InputStream is = new ByteArrayInputStream(FileUtils.readFileToByteArray(new File(inputFile)));
Document doc = builder.parse(is);
is.close();
renderer.setDocument(doc,null);
renderer.layout();
renderer.createPDF(os);
os.close();
}

最佳答案

鉴于元素的结构,<link href="css/RedCSS.css" rel="stylesheet" type="text/css" />应该绝对有效。

这是一个工作示例:

文件结构:

enter image description here

文件 1:testRed.html

<html>
<head>
<link href="css/testRed.css" rel="stylesheet" type="text/css" />
</head>
<body>
Should be <b class="redFontClass">red</b>
</body>
</html>

文件 2:css/testRed.css

.redFontClass {color : red;}

Java 代码:

  String inputFile = "testRed.html";
String outputFile = "testRed.pdf";
OutputStream os = new FileOutputStream(outputFile);
ITextRenderer renderer = new ITextRenderer();

DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
InputStream is = new ByteArrayInputStream(FileUtils.readFileToByteArray(new File(inputFile)));
Document doc = builder.parse(is);
is.close();
renderer.setDocument(doc, null);
renderer.layout();
renderer.createPDF(os);
os.close();

关于java - Flying Saucer 中的外部 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25990886/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com