0

Below is the snap from the XML on which I am trying to do the operation (please don't consider this is as a perfect xml with all hierarchies, this snap is just to represent the element logically):

<Item>
<CostWindow><![CDATA[01 Jan 2023 to 31 Jan 2023]]></CostWindow>
<CostPerUnit><![CDATA[XYZ42321232506786.57]]></CostPerUnit>
</Item>
<Item>
<CostWindow><![CDATA[01 Jan 2023 to 31 Jan 2023]]></CostWindow>
<CostPerUnit><![CDATA[XYZ4506786.57]]></CostPerUnit>
</Item>

Now I am trying to render this into a table with below specification:

<fo:table table-layout="fixed" width="100%"> 
   <fo:table-column column-width="proportional-column-width(1.25)" border-style="solid"/>
   <fo:table-column column-width="proportional-column-width(0.75)" border-style="solid"/>
     <fo:table-body>
     <xsl:for-each select="Item">
      <fo:table-row>
        <fo:table-cell column-number="1">
         <fo:block font-size="3mm">
          <xsl:value-of select="CostWindow"/>
        </fo:block>
       </fo:table-cell>

        <fo:table-cell column-number="2">
         <fo:block font-size="3mm" writing-mode="rl" text-align="left">
         <xsl:value-of select="CostPerUnit"/>
        </fo:block>
       </fo:table-cell>
     </fo:table-row>
     </xsl:for-each>
    </fo:table-body>
</fo:table>

What I am seeing auto wrap is happening when it is like a sentence; see below example-

<CostWindow><![CDATA[01 Jan 2023 to 31 Jan 2023]]></CostWindow>

But auto wrap is not happening when it is a combination of characters only; see below example-

<CostPerUnit><![CDATA[XYZ42321232506786.57]]></CostPerUnit>

Attaching the sample where we can see that overlap is happening:

AutoWrap_Overlap

So here diagram 1 is showing how XYZ42321232506786.57 this is getting overlapped and diagram 2 is showing how '01 Jan 2023 to 31 Jan 2023' this is getting auto wrapped (diagram 2 is good, this is just for reference); So for fo:block what property I should apply or may be what will be the solution here to auto wrap a word or combination of character that is occurring without any spaces and exceeding the available area ; Thank you for any kind of helpful input here.

Rito Sarkar
  • 35
  • 1
  • 8

0 Answers0