DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUGĀ·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=38433>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED ANDĀ·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=38433

           Summary: Embedded Xalan produce different result
           Product: Fop
           Version: 0.20.5
          Platform: PC
        OS/Version: Windows XP
            Status: NEW
          Severity: normal
          Priority: P2
         Component: fo tree
        AssignedTo: [email protected]
        ReportedBy: [EMAIL PROTECTED]


Direct transformation (xml -> xsl -> fo -> pdf) produce different result than
indirect (xml -> xsl -> fo) + (fo -> pdf)

Example:
xml:
<labels>
 <empty no="2"/>
 <label3>
         <line>text</line>
         <line>2text</line>
         <line>3text</line>
</label3>
 <label4>
         <line>4text</line>
         <line>42text</line>
         <line>43text</line>
         <line>44text</line>
 </label4>
<label3>
         <line>text</line>
         <line>2text</line>
         <line>3text</line>
</label3>
 <label4>
         <line>4text</line>
         <line>42text</line>
         <line>43text</line>
         <line>44text</line>
 </label4>
<label3>
         <line>text</line>
         <line>2text</line>
         <line>3text</line>
</label3>
 <label4>
         <line>4text</line>
         <line>42text</line>
         <line>43text</line>
         <line>44text</line>
 </label4>
 <empty no="2"/>
<label3>
         <line>text</line>
         <line>2text</line>
         <line>3text</line>
</label3>
 <label4>
         <line>4text</line>
         <line>42text</line>
         <line>43text</line>
         <line>44text</line>
 </label4>
<label3>
         <line>text</line>
         <line>2text</line>
         <line>3text</line>
</label3>
 <label4>
         <line>4text</line>
         <line>42text</line>
         <line>43text</line>
         <line>44text</line>
 </label4>
</labels>

xslt:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.1" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
xmlns:fo="http://www.w3.org/1999/XSL/Format"; exclude-result-prefixes="fo">
  <xsl:output method="xml" version="1.0" omit-xml-declaration="no" 
indent="yes"/>
  <xsl:template match="labels">
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format";>
  <fo:layout-master-set>
    <fo:simple-page-master 
        margin-right="1in div 4"
        margin-left="1in div 4"
        margin-bottom="1in div 4"
        margin-top="1in div 4"
        master-name="first">
    <fo:region-body column-count="3" column-gap="1in div 16"/>
      <fo:region-after extent="1.5cm"/>
    </fo:simple-page-master>
  </fo:layout-master-set>
  
  <fo:page-sequence master-reference="first"> 
    <fo:flow flow-name="xsl-region-body" column-count="3">
        <xsl:apply-templates/>
    </fo:flow>
  </fo:page-sequence>
</fo:root>
  </xsl:template>
  <xsl:template match="empty">
        <xsl:call-template name="empty-one">
                <xsl:with-param name="to" select="@no"/>
        </xsl:call-template>
  </xsl:template>
  
  <xsl:template match="label4">
      <fo:block>
        <fo:table border-collapse="separate" table-layout="fixed" 
border-top-width="1in
div 8" height="21in div 20" width="2.4in" >
        <fo:table-column column-width="2.4in"/>
        <fo:table-body font-size="14pt">
          <xsl:apply-templates />
        </fo:table-body>
        </fo:table>             
      </fo:block>
  </xsl:template>

  <xsl:template match="label3">
      <fo:block>
      <fo:table border-collapse="separate" table-layout="fixed"
border-top-width="1in div 8" height="21in div 20" >
        <fo:table-column column-width="2.4in"/>
        <fo:table-body  font-size="16pt">
          <xsl:apply-templates select="line" />
        </fo:table-body>
      </fo:table>        
      </fo:block>
  </xsl:template>

  <xsl:template match="label3/line">
          <fo:table-row height="21in div 60" >
          <xsl:choose>
                  <xsl:when test="position() = 1">
            <fo:table-cell     border-top-width="3pt"    
border-top-style="solid"
border-top-color="white">
            <fo:block-container height="1in div 3" width="2.37in" 
overflow="hidden">
              <fo:block>
                <xsl:value-of select="text()" />
              </fo:block>
            </fo:block-container>           
            </fo:table-cell>
                  </xsl:when>
                  <xsl:otherwise>
            <fo:table-cell>
            <fo:block-container height="1in div 3" width="2.37in" 
overflow="hidden">
              <fo:block>
                <xsl:value-of select="text()" />
              </fo:block>
            </fo:block-container>           
            </fo:table-cell>
                  </xsl:otherwise>
          </xsl:choose>
          </fo:table-row>
  </xsl:template>
    
  <xsl:template match="label4/line">
          <fo:table-row height="21in div 80" >
          <xsl:choose>
                  <xsl:when test="position() = 1">
                    <fo:table-cell     border-top-width="3pt"    
border-top-style="solid"
border-top-color="white">
                        <fo:block-container height="1in div 4" width="2.37in" 
overflow="hidden">
                              <fo:block>
                              <xsl:value-of select="text()"/>
                              </fo:block>
                        </fo:block-container>       
                    </fo:table-cell>
                  </xsl:when>
                <xsl:otherwise>
                 <fo:table-cell>
                   <fo:block-container height="1in div 4" width="2.37in" 
overflow="hidden">
                      <fo:block>
                              <xsl:value-of select="text()"/>
                      </fo:block>
                   </fo:block-container>            
                 </fo:table-cell>
                </xsl:otherwise>
          </xsl:choose>
          </fo:table-row>
 </xsl:template>
 
 <xsl:template name="empty-one">
  <xsl:param name="to"/>
          <xsl:if test="$to &gt; 1">
                  <xsl:call-template name="empty-one">
                        <xsl:with-param name="to" select="$to - 1"/>
                  </xsl:call-template>
          </xsl:if>
              <fo:block>
                <fo:table border-collapse="separate" table-layout="fixed"
border-top-width="1in div 8" height="21in div 20" width="2.4in"/>
              </fo:block>         
 </xsl:template>
</xsl:stylesheet>

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

Reply via email to