cocoon-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From yuryx <yu...@mobicomk.donpac.ru>
Subject Re: my svg does not work in cocoon 2.0.1
Date Wed, 06 Mar 2002 12:10:17 GMT
This is the valid style (work in my machine):

page2svg.xsl

<?xml version="1.0"?>

<xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:xlink="http://www.w3.org/1999/xlink"  >   

 <xsl:template match="page">
    <html>
    <head>
        <title><xsl:value-of select="title"/></title>
    </head>
    <body>       
     <xsl:apply-templates/>
    </body>
    </html>
 </xsl:template>

 <xsl:template name="input-filter-text">
    <xsl:param name="txt"/>
    <xsl:param name="size"/>
  <svg:text fill="red"  font-family="TrebuchetMS-Bold"  x="10" y="13" 
xmlns:svg="http://www.w3.org/2000/svg">
    <xsl:attribute name="font-size"><xsl:value-of 
select="$size"/></xsl:attribute>               
    <xsl:value-of select="$txt"/>
  </svg:text>
 </xsl:template>


 <xsl:template name="input-text">
    <xsl:param name="txt"/>
    <xsl:param name="size"/>
    <xsl:param name="color"/>
    <xsl:param name="x"/>   
    <xsl:param name="y"/>
  <svg:text  font-family="TrebuchetMS-Bold" 
xmlns:svg="http://www.w3.org/2000/svg">
    <xsl:attribute name="x"><xsl:value-of select="$x"/></xsl:attribute>
  
    <xsl:attribute name="y"><xsl:value-of select="$y"/></xsl:attribute>
    <xsl:attribute name="font-size"><xsl:value-of 
select="$size"/></xsl:attribute>               
    <xsl:attribute name="fill"><xsl:value-of 
select="$color"/></xsl:attribute>                   
    <xsl:value-of select="$txt"/>
  </svg:text>
 </xsl:template>
 
 <xsl:template name="input-line">
    <xsl:param name="x1"/>
    <xsl:param name="x2"/>
    <xsl:param name="y1"/>   
    <xsl:param name="y2"/>
    <xsl:param name="color"/>
    <xsl:param name="width"/>
    <svg:g xmlns:svg="http://www.w3.org/2000/svg">
    <xsl:attribute name="stroke"><xsl:value-of 
select="$color"/></xsl:attribute>
    <xsl:attribute name="stroke-width"><xsl:value-of 
select="$width"/></xsl:attribute>   
    <svg:line>
        <xsl:attribute name="x1"><xsl:value-of 
select="$x1"/></xsl:attribute>   
        <xsl:attribute name="y1"><xsl:value-of 
select="$y1"/></xsl:attribute>   
        <xsl:attribute name="x2"><xsl:value-of 
select="$x2"/></xsl:attribute>   
        <xsl:attribute name="y2"><xsl:value-of 
select="$y2"/></xsl:attribute>   
    </svg:line>
   </svg:g>
 </xsl:template>

 <xsl:template name="input-poly">
    <xsl:param name="points"/>
    <xsl:param name="color"/>
    <svg:polyline fill="none"  stroke-width="1px" 
xmlns:svg="http://www.w3.org/2000/svg">
        <xsl:attribute name="stroke"><xsl:value-of 
select="$color"/></xsl:attribute>           
        <xsl:attribute name="points"><xsl:value-of 
select="$points"/></xsl:attribute>   
    </svg:polyline>
 </xsl:template>


 <xsl:template name="input-rect">
    <xsl:param name="width"/>
    <xsl:param name="fill"/>
    <xsl:param name="height"/>
    <svg:rect x="0" y="0" stroke="green" stroke-width="1px" 
xmlns:svg="http://www.w3.org/2000/svg">
        <xsl:attribute name="fill"><xsl:value-of 
select="$fill"/></xsl:attribute>           
        <xsl:attribute name="width"><xsl:value-of 
select="$width"/></xsl:attribute>
        <xsl:attribute name="height"><xsl:value-of 
select="$height"/></xsl:attribute>
    </svg:rect>
 </xsl:template>



 <xsl:template match="graph">
  <svg:svg xmlns:svg="http://www.w3.org/2000/svg">
   <xsl:attribute name="width"><xsl:value-of 
select="svg-width"/></xsl:attribute>
   <xsl:attribute name="height"><xsl:value-of 
select="svg-height"/></xsl:attribute>
   <svg:defs>
    <svg:filter id="blur1"><svg:feGaussianBlur 
stdDeviation="3"/></svg:filter>
    <svg:filter id="blur2"><svg:feGaussianBlur 
stdDeviation="1"/></svg:filter>
   </svg:defs>
     <xsl:apply-templates select="transform|ln|lnp|para|txt|ttxt|rect"/>
  </svg:svg>
 </xsl:template>

 <xsl:template match="transform">
    <svg:g xmlns:svg="http://www.w3.org/2000/svg">
    <xsl:attribute name="transform"><xsl:value-of 
select="value"/></xsl:attribute>
    <xsl:apply-templates select="transform|ln|lnp|para|txt|ttxt|rect"/>
    </svg:g>
 </xsl:template>


 <xsl:template match="rect">
     <xsl:call-template name="input-rect">
     <xsl:with-param name="fill"><xsl:value-of 
select="color"/></xsl:with-param>
     <xsl:with-param name="width"><xsl:value-of 
select="width"/></xsl:with-param>
     <xsl:with-param name="height"><xsl:value-of 
select="height"/></xsl:with-param>
     </xsl:call-template>

 </xsl:template>

 
 <xsl:template match="para">
     <xsl:call-template name="input-filter-text">
     <xsl:with-param name="txt"><xsl:value-of 
select="bod"/></xsl:with-param>
     <xsl:with-param name="size"><xsl:value-of 
select="size"/></xsl:with-param>     
     </xsl:call-template>
 </xsl:template>

 <xsl:template match="txt">
     <xsl:call-template name="input-text">
     <xsl:with-param name="txt"><xsl:value-of 
select="bod"/></xsl:with-param>
     <xsl:with-param name="size">10</xsl:with-param>
     <xsl:with-param name="color">black</xsl:with-param>
     <xsl:with-param name="x"><xsl:value-of 
select="x"/></xsl:with-param>   
     <xsl:with-param name="y"><xsl:value-of select="y"/></xsl:with-param>
 

     </xsl:call-template>
 </xsl:template>

 <xsl:template match="ttxt">
     <xsl:call-template name="input-text">
     <xsl:with-param name="txt"><xsl:value-of 
select="bod"/></xsl:with-param>
     <xsl:with-param name="size"><xsl:value-of 
select="size"/></xsl:with-param>
     <xsl:with-param name="color">black</xsl:with-param>
     <xsl:with-param name="x"><xsl:value-of 
select="x"/></xsl:with-param>   
     <xsl:with-param name="y"><xsl:value-of select="y"/></xsl:with-param>
 

     </xsl:call-template>
 </xsl:template>

 <xsl:template match="lnp">
    <xsl:call-template name="input-poly">
    <xsl:with-param name="points"><xsl:value-of 
select="points"/></xsl:with-param>
    <xsl:with-param name="color"><xsl:value-of 
select="color"/></xsl:with-param>   
    </xsl:call-template>
 </xsl:template>


<xsl:template match="ln">
     <xsl:call-template name="input-line">
     <xsl:with-param name="x1"><xsl:value-of select="x1"/></xsl:with-param>
     <xsl:with-param name="x2"><xsl:value-of select="x2"/></xsl:with-param>
     <xsl:with-param name="y1"><xsl:value-of select="y1"/></xsl:with-param>
     <xsl:with-param name="y2"><xsl:value-of select="y2"/></xsl:with-param>
     <xsl:with-param name="color"><xsl:value-of 
select="color"/></xsl:with-param>
     <xsl:with-param name="width"><xsl:value-of 
select="width"/></xsl:with-param>

     </xsl:call-template>
 </xsl:template>

    <xsl:template match="@*|node()" priority="-2">
    <xsl:copy><xsl:apply-templates select="@*|node()"/></xsl:copy>
    </xsl:template>   
    <xsl:template match="text()" priority="-1">
    <xsl:value-of select="."/>
    </xsl:template>   
</xsl:stylesheet>

Regards.
Yury.





---------------------------------------------------------------------
Please check that your question has not already been answered in the
FAQ before posting. <http://xml.apache.org/cocoon/faqs.html>

To unsubscribe, e-mail: <cocoon-users-unsubscribe@xml.apache.org>
For additional commands, e-mail: <cocoon-users-help@xml.apache.org>


Mime
View raw message