【问题标题】:How to convert HTML with CSS to xsl-fo?如何将带有 CSS 的 HTML 转换为 xsl-fo?
【发布时间】:2013-04-29 06:47:07
【问题描述】:

我想将带有 Css 的 HTML 转换为 xsl-fo。任何人都可以向我建议如何转换它。

我有 2 个文件,一个 html 文件和一个 css 文件。我想用这2个文件生成xsl-fo文件,这样我就可以轻松生成pdf,rtf等格式。

HTML file 

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link rel="stylesheet" type="text/css" href="style.css"/> *--> css file* 
<title></title>
</head>
<body>
<div class="cw-default">
<p><span class="sans"><b>Short title</b></span> this is text for testing<i>italic text</i>.</p>
<p class="center">this is test</p>
</div>
</body>
</html>

style.css 文件会将属性添加到 html 中,我希望此属性值也将出现在生成的 FO 文件中。

/* Style Sheet */

.cw-default { font-size: 1em; }
.sans  { font-family: arial,helvetica }
.center   {text-align: center;}

【问题讨论】:

  • 嗨,Param,欢迎来到 SO。您能否添加您尝试过的代码示例?通过这种方式,我们可以看到问题所在,或许可以更好地帮助您。

标签: html css xsl-fo


【解决方案1】:

我们在很多项目中都使用过这个:

Werner Donne's CSS to XSL FO

这是将 CSS、CSS2 转换为 XSL FO 的 XSL plus 代码。

【讨论】:

【解决方案2】:

将 HTML 转换为 xsl-fo 是从一种标记语言到另一种标记语言的转换。它们之间的区别在于 HTML 用于在 Browsers 中显示,而 xsl-fo 用于 Renderers 转换为 PDF。
CSS 不是转换标记语言的工具,而是设置样式的工具。您可以将它与 HTML 和 xsl-fo 一起使用,但这并不意味着它能够进行转换。为转换而构建的语言是 XSLT。这是您想要实现的目标的正确工具。请注意,XSLT 与 XML 输入一起工作,大多数 HTML 不是有效的 XML,但 XHTML 是。请务必关闭您的标签;-)
这是一个例子:Xslt to xsl-fo transformation

【讨论】:

  • 我可以通过 xslt 将 html 转换为 xsl-fo,但我还想要具有对齐、填充、颜色等所有属性的 css。要在 xsl-fo 中实现 css 样式,我需要一些建议。
  • 在类中触发 css,您可以使用属性来驱动转换。一个想法给stackoverflow.com/questions/977874/…
猜你喜欢
  • 2021-06-28
  • 1970-01-01
  • 2011-04-13
  • 2016-07-29
  • 2010-09-27
  • 2012-03-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多