2012-06-11 39 views
3

我使用FOP轉換HTML(嵌入XML)爲PDF。 的HTML片段是象下面這樣: -FOP是有可能創建一個表,只有<table-head>但沒有<table-body>?

<table border="1" width="100%"> 
    <thead> 
    <tr> 
     <th>Name</th> 
     <th>Value</th> 
    </tr> 
    </thead> 
    <tbody/> 
</table> 

當我變換,我得到這個錯誤: -

Caused by: org.apache.fop.fo.ValidationException: Error(Unknown location): fo:table-body i 
s missing child elements. 
Required Content Model: marker* (table-row+|table-cell+) 

我取出<tbody/>元素時得到了類似的錯誤: -

org.apache.fop.fo.ValidationException: Error(Unknown location): fo:table is missing child 
elements. 
Required Content Model: (marker*,table-column*,table-header?,table-footer?,table-body+) 

看起來是必需的表體到FO:表和錶行需要表體。我的問題是: -

是否有可能創建一個只表頭和表無體或一個空表體的表?

回答

0

你可以ofcourse,該方式如下:

  1. 創建<fo:table-body>
  2. 創建<fo:table-cell件更如果需要
  3. 把邊框大小爲零,色白,或你的頁面的顏色 背景
0

如果您的數據XPath是XPA /日,你可以使用以下命令:

<fo:table> 
    <fo:table-header>(whatever)</fo:table-header> 
    <fo:table-body> 
     <xsl:if test="xpa/th"> 
      <xsl:apply-templates select="xpa/th" /> 
     </xsl:if> 
     <xsl:if test="not(xpa/th)"> 
      <fo:table-cell><fo:block /></fo:table-cell> 
     </xsl:if> 
    </fo:table-body> 
</fo:table> 
相關問題