This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: accumulator needed


You're right, the sum of previous durations should sufficiant for me.
The other tip seem more difficult to me.
Thank you.

Karim Barkari


Jarno.Elovirta@nokia.com a écrit :

> Hip hei!
>
> >   <!-- Draw a quarter note. -->
> >   <xsl:template match="note">
>
> You need to declare the parameters used here, i.e.
>
>   <xsl:param name="x_offset" select="0">
>   <xsl:param name="y_offset" select="0">
>
> >     <xsl:if test="type='quarter'">
> >       <xsl:element name="g">
> >  <xsl:attribute name="transform">
> >    <xsl:text>translate(</xsl:text>
> >    <xsl:value-of select="$x_offset"></xsl:value-of>
> >    <xsl:text>,</xsl:text>
> >    <xsl:value-of select="$y_offset"></xsl:value-of>
> >    <xsl:text>)</xsl:text>
> >  </xsl:attribute>
> >
> >  <xsl:element name="use">
> >    <xsl:attribute name="xlink:href"
> > namespace="http://www.w3.org/1999/xlink";>
> >      <xsl:text>MusicGlyphs.svg#BLACKHEAD</xsl:text>
> >    </xsl:attribute>
> >  </xsl:element>
> >       </xsl:element>
> >     </xsl:if>
> >   </xsl:template>
>
> You could make the accumulator thingy to work by either counting the
> durations of previous notes with something like
>
>   sum(preceding-sibling::note/duration)
>
> which wouldn't actually accumulate anything, but would get the job done; or,
> you could process the notes by first selecting only the first one and then
> in the template for "note" continue by select the following-sibling::note
> with the offset parameter.
>
> Hope this helps,
>
> Jarno
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]