Jens

Here's my partial 2 minute solution untested
(a hint Take a look at the spec here http://zvon.org/xxl/xslfoReference/Output/index.html )


<xsl:template match="table">
<fo:table>
<xsl:attribute name="border-separation" select="./@cellspacing"/> <!-- Not so sure about this one -->
<xsl:attribute name="padding" select="./cellpadding"/>
<xsl:variable name="numcolumns" select="count(./tbody/tr/*)"/>
<xsl:for-each select="./tbody/tr/*">
<fo:table-column>
<xsl:attribute name="column-width" select="./@width div $numcolumns"/>
</fo:table-column
<fo:table-header>
etc. etc.
<xsl:for-each
</xsl:template>


Chuck Paussa

Jens Posingies wrote:

Hi folks,

again we need your help: We are using FOP and XSLT for creating pdf
documents which works fine - excepting tables! The dtd contains a table-tag
like similar to html:
[...]
<!ENTITY % alignes "
align (left | center | right) #IMPLIED
valign (top | middle | bottom | baseline) #IMPLIED
">
<!ENTITY % alignes_span "
%alignes;
rowspan NMTOKEN '1'
colspan NMTOKEN '1'
">
[...]
<!ELEMENT table (title?, thead?, tbody+, tfoot?)>
<!ATTLIST table
%id_req;
width CDATA #IMPLIED
summary CDATA #IMPLIED
cellspacing CDATA #IMPLIED
cellpadding CDATA #IMPLIED


<!ELEMENT thead (tr)+>
<!ATTLIST thead
%id_imp;
%alignes;


<!ELEMENT tfoot (tr)+>
<!ATTLIST tfoot
%id_imp;
%alignes;


<!ELEMENT tbody (tr)+>
<!ATTLIST tbody
%id_imp;
%alignes;


<!ELEMENT tr (th | td)+>
<!ATTLIST tr
%id_imp;
%alignes;


<!ELEMENT th (%outer;)*>
<!ATTLIST th
%id_imp;
%alignes_span;


<!ELEMENT td (%outer;)*>
<!ATTLIST td
%id_imp;
%alignes_span;


[...]
Transforming into html with xslt was no problem as expected, but how could a
template look like in fo (a bit heavy for newbies because of counting
columns etc.)? The fo:table-markups are a bit confusing, and some of them
don't seem to work as expected in the current FOP-version (like
table-and-caption). Who has experiences with fo:tables and xslt and could
give us a hint?

Jens Posingies

_______________________________________

   **** COMMODORE 64 BASIC V2 ****

64K RAM SYSTEM  38911 BASIC BYTES FREE

READY.
_
_______________________________________








Reply via email to