Changeset 174
- Timestamp:
- 12/11/06 17:20:50
- Files:
-
- trunk/src/xslt/simple-svg.xslt (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/xslt/simple-svg.xslt
r163 r174 9 9 extension-element-prefixes="swft" 10 10 version='1.0'> 11 12 <!-- named template for redundant transforms --> 13 <xsl:template name="transform"> 14 <transform> 15 <xsl:choose> 16 <!-- catch empty transform attributes. --> 17 <xsl:when test="not(@transform) or @transform=''"> 18 <Transform transX="0" transY="0"/> 19 </xsl:when> 20 <xsl:otherwise> 21 <xsl:copy-of select="swft:transform(@transform)"/> 22 </xsl:otherwise> 23 </xsl:choose> 24 </transform> 25 </xsl:template> 11 26 12 27 <!-- named template for redundant placing --> … … 46 61 <PlaceObject2 replace="0" depth="{swft:next-depth()}" name="{$name}" 47 62 objectID="{$id}"> 48 <transform> 49 <xsl:choose> 50 <xsl:when test="@transform"> 51 <xsl:copy-of select="swft:transform(@transform)"/> 52 </xsl:when> 53 <xsl:otherwise> 63 <!-- svg:use elements add an instance transform, all others have it 64 included in their definition. --> 65 <xsl:choose> 66 <xsl:when test="name()='use'"> 67 <xsl:call-template name="transform" /> 68 </xsl:when> 69 <xsl:otherwise> 70 <transform> 54 71 <Transform transX="0" transY="0"/> 55 </ xsl:otherwise>56 </xsl: choose>57 </ transform>72 </transform> 73 </xsl:otherwise> 74 </xsl:choose> 58 75 </PlaceObject2> 59 76 </xsl:template> … … 67 84 <PlaceObject2 replace="0" depth="{swft:next-depth()}" 68 85 objectID="{$innerid}"> 69 <transform> 70 <Transform transX="0" transY="0"/> 71 </transform> 86 <xsl:call-template name="transform" /> 72 87 </PlaceObject2> 73 88 <ShowFrame/> … … 107 122 <!-- initiate the definition pass. --> 108 123 <xsl:apply-templates mode="queue" /> 109 <!-- define svg as sprite. -->124 <!-- define svg root as sprite. --> 110 125 <DefineSprite objectID="{$id}" frames="1"> 111 126 <tags> … … 118 133 </xsl:template> 119 134 120 <xsl:template match="svg:g|svg:path|svg:rect|svg:use|svg:text" mode="queue"> 135 <xsl:template match="svg:g|svg:path|svg:rect|svg:use|svg:text|svg:flowRoot" 136 mode="queue"> 121 137 <xsl:variable name="id"><xsl:value-of 122 138 select="swft:map-id(@id)"/></xsl:variable> … … 134 150 </xsl:template> 135 151 136 <xsl:template match="svg:g|svg:path|svg:rect|svg:use|svg:text "152 <xsl:template match="svg:g|svg:path|svg:rect|svg:use|svg:text|svg:flowRoot" 137 153 mode="placement"> 138 154 <!-- no definition. just place this element. --> … … 144 160 <xsl:param name="name"/> 145 161 146 <!-- define the group and place the subparts --> 147 <DefineSprite objectID="{$id}" frames="1"> 148 <tags> 149 <xsl:apply-templates mode="placement" /> 150 <ShowFrame/> 151 <End/> 152 </tags> 153 </DefineSprite> 162 <!-- test if a wrapper is needed for a group transform --> 163 <xsl:choose> 164 <xsl:when test="not(@transform) or @transform='' or 165 transform='translate(0,0)'"> 166 <!-- no transform, define the group and place the subparts --> 167 <DefineSprite objectID="{$id}" frames="1"> 168 <tags> 169 <xsl:apply-templates mode="placement" /> 170 <ShowFrame/> 171 <End/> 172 </tags> 173 </DefineSprite> 174 </xsl:when> 175 <xsl:otherwise> 176 <!-- define an inner group and wrap it with the group transform --> 177 <xsl:variable name="innerid"><xsl:value-of 178 select="swft:next-id()"/></xsl:variable> 179 <DefineSprite objectID="{$innerid}" frames="1"> 180 <tags> 181 <xsl:apply-templates mode="placement" /> 182 <ShowFrame/> 183 <End/> 184 </tags> 185 </DefineSprite> 186 <xsl:call-template name="wrapElement"> 187 <xsl:with-param name="innerid" select="$innerid" /> 188 </xsl:call-template> 189 </xsl:otherwise> 190 </xsl:choose> 154 191 <!-- export --> 155 192 <xsl:call-template name="exportElement" /> … … 219 256 <!-- define the element --> 220 257 <DefineEditText objectID="{$shapeid}" wordWrap="1" multiLine="1" 221 password="0" 222 readOnly="0" autoSize="0" hasLayout="1" 223 notSelectable="0" hasBorder="1" isHTML="0" useOutlines="1" 224 fontRef="{swft:map-id('vera')}" fontHeight="240" 225 align="0" leftMargin="0" rightMargin="0" indent="0" leading="41" 226 variableName="{@name}"> 258 password="0" readOnly="0" autoSize="0" hasLayout="1" notSelectable="0" 259 hasBorder="0" isHTML="0" useOutlines="0" fontRef="{swft:map-id('vera')}" 260 fontHeight="240" align="0" leftMargin="0" rightMargin="0" indent="0" 261 leading="40" variableName="{@name}"> 227 262 <xsl:attribute name="initialText"> 228 <xsl: value-of select="normalize-space(.)"/>263 <xsl:apply-templates mode="svg-text"/> 229 264 </xsl:attribute> 230 265 <size> 231 <Rectangle left="{svg:flowRegion/svg:rect/@x * 20}" 232 right="{(svg:flowRegion/svg:rect/@x + svg:flowRegion/svg:rect/@width)* 233 20}" 234 top="{svg:flowRegion/svg:rect/@y * 20}" 235 bottom="{(svg:flowRegion/svg:rect/@y + 236 svg:flowRegion/svg:rect/@height)* 20}"/> 266 <Rectangle left="{svg:flowRegion/svg:rect/@x * 20}" 267 right="{(svg:flowRegion/svg:rect/@x + svg:flowRegion/svg:rect/@width)* 20}" 268 top="{svg:flowRegion/svg:rect/@y * 20}" bottom="{(svg:flowRegion/svg:rect/@y 269 + svg:flowRegion/svg:rect/@height)* 20}"/> 237 270 </size> 238 271 <color> 239 <Color RGBA red="100" green="150" blue="200" alpha="127"/>272 <Color red="0" green="0" blue="0" alpha="255"/> 240 273 </color> 241 274 </DefineEditText> … … 256 289 <!-- define the element --> 257 290 <DefineEditText objectID="{$shapeid}" wordWrap="0" multiLine="1" 258 password="0" 259 readOnly="1" autoSize="1" hasLayout="1" 260 notSelectable="1" hasBorder="0" isHTML="0" useOutlines="1" 261 fontRef="{swft:map-id('vera')}" fontHeight="240" 262 align="0" leftMargin="0" rightMargin="0" indent="0" leading="1" 263 variableName="{@name}"> 264 <xsl:attribute name="initialText"> 265 <xsl:apply-templates mode="svg-text"/> 266 </xsl:attribute> 267 <size> 268 <Rectangle left="{@x * 20}" 269 right="{@x * 30}" 270 top="{@y * 20}" 271 bottom="{@y * 30}"/> 272 </size> 273 <color> 274 <ColorRGBA red="255" green="255" blue="255" alpha="255"/> 275 </color> 291 password="0" readOnly="1" autoSize="1" hasLayout="1" notSelectable="1" 292 hasBorder="0" isHTML="0" useOutlines="0" fontRef="{swft:map-id('vera')}" 293 fontHeight="240" align="0" leftMargin="0" rightMargin="0" indent="0" 294 leading="40" variableName="{@name}"> 295 <xsl:attribute name="initialText"> 296 <xsl:apply-templates mode="svg-text"/> 297 </xsl:attribute> 298 <size> 299 <Rectangle left="{@x * 20}" right="{@x * 30}" top="{@y * 20}" bottom="{@y 300 * 30}"/> 301 </size> 302 <color> 303 <Color red="0" green="0" blue="0" alpha="255"/> 304 </color> 276 305 </DefineEditText> 277 306 <!-- wrap in sprite --> … … 283 312 </xsl:template> 284 313 314 <xsl:template match="svg:flowRegion" mode="svg-text"> 315 <xsl:apply-templates mode="svg-text"/> 316 </xsl:template> 317 318 <xsl:template match="svg:flowPara" mode="svg-text"> 319 <xsl:apply-templates mode="svg-text"/> 320 </xsl:template> 321 285 322 <xsl:template match="svg:tspan[position()=1]" mode="svg-text"> 286 323 <xsl:apply-templates mode="svg-text"/> … … 289 326 <xsl:template match="svg:tspan" mode="svg-text" priority="-1"> 290 327 <xsl:text> 291 </xsl:text>328 </xsl:text> 292 329 <xsl:apply-templates mode="svg-text"/> 293 330 </xsl:template>
