xsl-list
[Top] [All Lists]

Re: XSL for 2 columns- Format Specified

2005-01-24 14:27:49
Hi Joris,
Thanks for the same
I run the same,
I am getting the OK output in HTML  with the same. 

What i am more interested in getting the output in pdf
with the xsl.
Could you send me the changes reqd to do in the xsl to
get the output in PDF instead of HTML.

Thanks,
Samir

--- Joris Gillis <roac(_at_)pandora(_dot_)be> wrote:

Tempore 15:47:57, die 01/24/2005 AD, hinc in  
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com scripsit samir
sawant  
<cindy_mona(_at_)yahoo(_dot_)com>:

Need to convert this in following format where i
will
get 2 columns side by side on pages which will
continue till the end of data. Flow of the data on
the
page should be down and then across

AFter every 5 records ,  the line space  should be
there.
BOth columns should be inline means space after 5
records in both columns should match on the same
line.
Field within same column should be seperated by
space

two columns should be seperated by vertical line
in
between. Headings should repeat on each page.
Format should look like as below:

Something like this might do:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"  
xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:output indent="yes" method="html"/>

<xsl:variable name="size"
select="ceiling(count(root/region/row) div 2)"/>

<xsl:template match="root">
      <html>
              <body>
                      <xsl:apply-templates select="region"/>
              </body>
      </html>
</xsl:template>

<xsl:template match="region">
         <table>
              <thead>
                      <th>field A</th>
                      <th>field B</th>
              </thead>
                 <xsl:apply-templates
select="row[position() &lt;= $size]"/>
         </table>
</xsl:template>

<xsl:template match="row">
         <tr>
                 <xsl:apply-templates select="."
mode="col"/>
         </tr>
              <xsl:if test="position() mod 5=0">
              <tr><td><br/></td><td><br/></td></tr>
              </xsl:if>
</xsl:template>

<xsl:template match="row" mode="col">
      <td style="border-right:1px solid black">
                      <xsl:apply-templates select="*"/>
      </td>
      <td>
                      <xsl:apply-templates  

select="following-sibling::row[position()=$size]/*"/>
      </td>
</xsl:template>

<xsl:template match="field">
      <xsl:apply-templates/><xsl:text> </xsl:text>
</xsl:template>

</xsl:stylesheet>




regards,
-- 
Joris Gillis

(http://www.ticalc.org/cgi-bin/acct-view.cgi?userid=38041)
Laudeo W3C et dona ferens


--~------------------------------------------------------------------
XSL-List info and archive: 
http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to:
http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--




__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--