我知道XSLT本身有属性集,但这迫使我使用
<xsl:element name="fo:something">
Run Code Online (Sandbox Code Playgroud)
每次我想输出一个
<fo:something>
Run Code Online (Sandbox Code Playgroud)
标签.XSL-FO规范中是否有任何内容允许我为FO输出中的所有表指定(假设)一组默认属性(边距,填充等)?
基本上我正在寻找CSS的功能,但对于FO输出而不是HTML.
我有一些XML文件用于生成我的网页,但是我需要能够允许用户选择多个页面然后将它们组合成一个PDF.此PDF需要具有与实际网页不同的样式(内容保存在XML文件中;)).
ps PDF必须包含目录......并将包含从网站上拍摄的图像.
我想将一些xml转换为像pdf文档这样的杂志.很像LaTeX允许你做的事情,但是我无法找到关于这个主题的任何新书或在线教程.是否值得投资使用这项技术?
此外,我查看了Apache XSL-FO项目,他们的最后一个版本是在2008年8月.
ps商业套餐不是一个选择:(
从Html生成PDF时,webkit转换不起作用.我需要以45度角旋转div并且在使用webkit变换后它在屏幕上看起来没问题,但是使用winnovatives Html到PDF转换器,输出是平坦的不旋转.有解决方案吗
我将创建一个从html转换为某种格式的转换器.我正在考虑使用中间格式XML(XSL-FO).
我的问题:如果没有那么多应用程序呈现它,为什么FO格式很受欢迎?
我试图从Java对象生成即时PDF报告.我还没有找到很多这方面的例子,所以我一直在关注这个例子:
这段代码与我自己的唯一真正区别在于我使用JSON转换和XMLSerializer生成src(示例中的第81行).
我遇到的问题是使用Transformer.当我进行转换时(示例的第87行),我收到错误消息:
(Location of error unknown)org.apache.fop.fo.ValidationException: First element must be the fo:root formatting object. Found (Namespace URI: "", Local Name: "html") instead. Please make sure you're producing a valid XSL-FO document.
由于我没有对变形金刚的了解,并且无法找到那种文档来告诉我它应该如何工作,我真的不知道变换在哪里崩溃.
任何体验这种转换,或理解我缺少的任何经验都非常感谢.
我最近开始尝试使用XSL-FO; 它似乎得到了很好的支持,所有XSL-FO供应商都非常有帮助,你可以从很少(或没有)钱开始.
我的公司在90年代购买了重型(每分钟40k页)IBM打印机,但它的软件现在已经过时了.
XSL-FO看起来很有前途,但我想知道旧的,成熟的技术是否会更好.构建此类软件的ISIS Papyrus的首席架构师认为,XSL-FO只是一个营销宣传.
我正在研究xslt和xsl-fo代码,分别转换为html和pdf.
在我的源码xml我有一个表,我可以直接复制为html输出.
<text>
<table border='1'>
<thead>
<tr><th>Problem</th><th>Date</th><th>Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td>Cholecystitis</td><td>9/28/2002 - 6/2003</td>
<td>Resolved</td>
<td>Surgery postponed until after delivery</td>
</tr>
<tr>
<td>Pregnancy</td><td>7/2001 - 4/22/2002</td>
<td>Resolved</td>
<td>Prior history of miscarraige</td>
</tr>
<tr><td>Ankle Sprain</td><td>3/28/2005</td>
<td>Current</td>
<td>Slipped on ice and fell</td>
</tr>
</tbody>
</table>
</text>
Run Code Online (Sandbox Code Playgroud)
我只是用它来复制节点的内容:
<xsl:copy-of select="."/>
Run Code Online (Sandbox Code Playgroud)
我认为这适用于xslt转换为html,因为浏览器可以直接解释它.但是对于我的pdf,我想我必须使用完全不同的xsl-fo.我知道在xsl-fo中我必须使用:
<fo:table>
Run Code Online (Sandbox Code Playgroud)
但是,是否有一种"标准"方式来格式化此表以便能够将其用于我的pdf生成?pdf的xsl:copy生成一行,其中包含所有已剥离的值,但没有表.
谢谢!
=====================================
我正在尝试做的是编写一些xslt来"解析"我的源xml文件中嵌入的表,以生成如下所示的内容:
<fo:table table-layout="fixed" width="100%">
<fo:table-column column-width="25mm"/>
<fo:table-column column-width="25mm"/>
<fo:table-body>
<fo:table-row>
<fo:table-cell>
<fo:block>
something
</fo:block>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell>
<fo:block>
something
</fo:block>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
Run Code Online (Sandbox Code Playgroud)
它是要走的路吗?!表非常标准,我认为html表可以很容易地转换为xslt/xsl-fo.
我想使用开放标准来打印报告,该报告的每页末尾都必须有小计。
螺纹XSL-FO,CSS3,而不是CSS2的用于创建分页文件如PDF?建议将CSS3与HTML结合使用。
现在,我遇到的问题是使用HTML或CSS或JS确定A4页面的填充位置,以便出现分页符。
有CSS分页符选择器:
page-break-before: always | avoid — always/avoid page breaks before the item
page-break-after: always | avoid — always/avoid page breaks after the item
page-break-inside: always | avoid — always/avoid page breaks in the middle of the item
Run Code Online (Sandbox Code Playgroud)
但是这些对于每个页面上的小计而言并不是真正有用的,因为我不知道页面何时填充,因此我可以在其中放置这样的CSS的标签。
HTML TABLE标签支持某种形式的表头和表尾,听起来很有希望:
可以分别使用THEAD,TFOOT和TBODY元素将表行分组为表头,表脚和一个或多个表主体部分。这种划分使用户代理能够独立于桌子的头和脚来支持桌子主体的滚动。当打印长表时,可以在包含表数据的每一页上重复表的头和脚信息。
<TABLE>
<THEAD>
<TR> ...header information...
</THEAD>
<TFOOT>
<TR> ...footer information...
</TFOOT>
<TBODY>
<TR> ...first row of block one data...
<TR> ...second row of block one data...
</TBODY>
<TBODY>
<TR> ...first row of block two …Run Code Online (Sandbox Code Playgroud) 输出格式选择是任何软件项目中的基本决策.我有为电子书客户分发数字内容的项目,理想情况下,我们只提供一种格式的下载...另外一种格式是"加成本",用于软件和内容修订.
赢得电子书的"格式之战"(或"eBabel之塔")?
维基百科说 " ......有些电子书格式比其他电子邮件格式更受欢迎,支持得更广泛.EPUB格式得到最广泛的支持(...),它受到最多电子阅读器的支持 " .
所以换句话说:
是否有任何API /解决方案可以从XML文件数据和定义生成PDF报告.例如,XML定义/数据可以是:
<pdf>
<paragraph font="Arial">Title of report</paragraph>
</pdf>
Run Code Online (Sandbox Code Playgroud)
将HTML转换为PDF也是一个很好的解决方案.
目前我们使用iText API编写Java代码.我希望外部化代码,以便非技术人员可以编辑和进行更改.