Justify text on a PDF genrated by XSL FO

Certified Associate Developer

Hi all,

Using the smart service PDF from XSL FO Transformation With Fonts from the Dynamic Document Generator, I am facing issues justifying text within a block when it is not containing spaces on it:

On this example:

<fo:table-row>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="3mm" margin-bottom="0mm" linefeed-treatment='preserve' white-space-treatment='preserve-space' white-space-collapse='true' >
<xsl:value-of select="descripcion_txt" />
<!-- <xsl:call-template name="zero_width_space_1">
<xsl:with-param name="data" select="descripcion_txt"/>
</xsl:call-template> -->
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>

Looking for some help we tested using a template to split texts but is not wrapping words correctly:

Templates:

<xsl:template name="zero_width_space_1">
<xsl:param name="data"/>
<xsl:param name="counter" select="0"/>
<xsl:choose>
<xsl:when test="$counter &lt; string-length($data)">
<xsl:value-of select='concat(substring($data,$counter,1),"&#8203;")'/>
<xsl:call-template name="zero_width_space_2">
<xsl:with-param name="data" select="$data"/>
<xsl:with-param name="counter" select="$counter+1"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<xsl:template name="zero_width_space_2">
<xsl:param name="data"/>
<xsl:param name="counter"/>
<xsl:value-of select='concat(substring($data,$counter,1),"&#8203;")'/>
<xsl:call-template name="zero_width_space_1">
<xsl:with-param name="data" select="$data"/>
<xsl:with-param name="counter" select="$counter+1"/>
</xsl:call-template>
</xsl:template>

Sections:

<fo:table-row>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="3mm" margin-bottom="0mm" linefeed-treatment='preserve' >
<!-- <xsl:value-of select="descripcion_txt" /> -->
<xsl:call-template name="zero_width_space_1">
<xsl:with-param name="data" select="descripcion_txt"/>
</xsl:call-template>
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>

Is cutting correctly text with no spaces, but is cutting words when line finds the border:

Any suggestion?

Here is the xml and xsl code:

xml example: 

<doc>
<prefijo>
<nombre>Example</nombre>
<fecha>2023-03-16z</fecha>
</prefijo>
<seccion_campos>
<titulo_txt>DESCRIPCIÓN DEL ACTO O MOTIVO:</titulo_txt>
<descripcion_txt>Peropueden surgir empresas tecnológicas en países con legislaciones que hacen difícil cualquier emprendimiento? No hay duda de que un mal clima de negocios, burocracias infernales y la corrupción son grandes trabas. Es difícil crear una empresa innovadora en Venezuela, donde según los estudios del Banco Mundial de los que hablábamos en el prólogo hacen falta 17 trámites legales para registrar una nueva empresa, o en Argentina, donde se requieren 14, o en Brasil y Colombia, donde hacen falta 13, y que por lo general tardan varios meses en completarse.

I cannot find that it is an error from an XSLFO standpoint this surprises me, so maybe I just missed it, but from an implementation standpoint in other words, from within FOP, there really is no way to process hyphenation without knowing which language (and therefore which hyphenation dictionary to use. Probably what is happening is that FOP jumps to a default dictionary no doubt English or U.S. English. If you are using that default language your result is ok, but it is only by accident the FOP developers could just as easily have chosen Turkish as the default.

LOS INNOVADORES QUIEREN VIVIR EN LUGARES VIBRANTES </descripcion_txt>
</seccion_campos>
<seccion_campos>
<titulo_txt>EFECTO SOBRE LOS TENEDORES:</titulo_txt>
<descripcion_txt>efaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaecto</descripcion_txt>
</seccion_campos>
<seccion_campos>
<titulo_txt>NOTA COMPARATIVA RESPECTO A LAS DIFERENCIAS MÁS RELEVANTES:</titulo_txt>
<descripcion_txt>find that it is an error from an XSLFO standpoint this surprises me, so maybe I just missed it, but from an implementation standpoint in other words, from within FOP, there really is no way to process hyphenation without knowing which language (and therefore which hyphenation dictionary to use. Probably what is happening is that FOP jumps to a default dictionary no doubt English or U.S. English. If you are using that default language your result is ok, but it is bmv-test.appiancloud.com/.../lMBfe49_FfR7AnMpoon-ShAtibjpv4wDQFXudCPCREuKKkRzDRcUEpwDURnyVjx6t5Id2ExlrieqaqxXUWH2p-p8UnK2B1i6V-dwFn5rL-hfDlzgQ
bmv-dev.appiancloud.com/.../ksBCPzGojqGmiD_JHPtxO7RCAQ-3vL2745szbJZQQ8SUhuzlQk7uOeJCGKZaLcUdUNjeq78ZzD3wC_HeaHmkRH4V2TqtAoPkovRsTk


</descripcion_txt>
</seccion_campos>
<seccion_campos>
<titulo_txt>URL:</titulo_txt>
<descripcion_txt>find that it is an error from an XSLFO standpoint this surprises me, so maybe I just missed it, but from an implementation standpoint in other words, from within FOP, there really is no way to process hyphenation without knowing which language (and therefore which hyphenation dictionary to use. Probably what is happening is that FOP jumps to a default dictionary no doubt English or U.S. English. If you are using that default language your result is ok, but it is grupovass.sharepoint.com/.../Doc.aspx
</seccion_campos>
</doc>

XSL code:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="">www.w3.org/.../Transform" xmlns:fo="">www.w3.org/.../Format" >

<xsl:template name="zero_width_space_1">
<xsl:param name="data"/>
<xsl:param name="counter" select="0"/>
<xsl:choose>
<xsl:when test="$counter &lt; string-length($data)">
<xsl:value-of select='concat(substring($data,$counter,1),"&#8203;")'/>
<xsl:call-template name="zero_width_space_2">
<xsl:with-param name="data" select="$data"/>
<xsl:with-param name="counter" select="$counter+1"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
</xsl:otherwise>
</xsl:choose>
</xsl:template>

<xsl:template name="zero_width_space_2">
<xsl:param name="data"/>
<xsl:param name="counter"/>
<xsl:value-of select='concat(substring($data,$counter,1),"&#8203;")'/>
<xsl:call-template name="zero_width_space_1">
<xsl:with-param name="data" select="$data"/>
<xsl:with-param name="counter" select="$counter+1"/>
</xsl:call-template>
</xsl:template>

<xsl:template name="getDateBy">
<xsl:param name="date_dt"/>
<xsl:value-of select="concat('',substring($date_dt,9,2),'/',substring($date_dt,6,2),'/',substring($date_dt,1,4))" />
</xsl:template>

<xsl:template match="doc">
<fo:root xml:lang="es" xmlns:fo="">www.w3.org/.../Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="A4" page-width="220mm" page-height="280mm" margin-top="1cm" margin-bottom="1cm" margin-left="1cm" margin-right="1cm">
<fo:region-body margin-top="6cm" margin-bottom="1cm" margin-left="0mm" margin-right="5mm" />
<fo:region-before margin-top="0cm" margin-bottom="20cm" margin-left="0cm" margin-right="0cm" />
<fo:region-after margin-top="0cm" margin-bottom="1cm" margin-left="0cm" margin-right="3cm" />
</fo:simple-page-master>
</fo:layout-master-set>

<fo:page-sequence master-reference="A4">

<!-- HEADER -->
<fo:static-content flow-name="xsl-region-before" >
<fo:block-container height="0cm" background-color="white" margin-top="-20mm" margin-left="-10mm" margin-right="43mm" >

<!-- NOMBRE DEL PREFIJO -->
<fo:block text-align="left" font-size="13pt" margin-top="25mm" margin-left="20mm" color="black" font-weight="bold" >
<xsl:value-of select="prefijo/nombre" />
</fo:block>
<!-- TERMINA EL NOMBRE DEL PREFIJO -->

<!-- LOGO -->
<fo:block margin-left="135mm" margin-top="-15mm">
<fo:external-graphic
src = "url('data:image/png;base64,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')"
height="10.5cm"
content-width="8.5cm" />
</fo:block>
<!-- TERMINA EL LOGO -->

<!-- FECHA -->
<fo:block margin-left="15mm" margin-bottom="-30mm" margin-top="-63mm" >
<fo:table table-layout="fixed" width="100%" >
<fo:table-column column-width="249mm" />
<fo:table-body>
<fo:table-row>
<fo:table-cell>
<fo:block-container font-size="11pt" border-bottom-style="solid" border-color="black" >
<fo:block margin-left="-5mm" color="black" >Fecha:
<xsl:call-template name="getDateBy">
<xsl:with-param name="date_dt" select="prefijo/fecha"/>
</xsl:call-template>
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:block>
<!-- TERMINA LA FECHA -->

</fo:block-container>
</fo:static-content>
<!-- TERMINA EL HEADER -->

<!-- FOOTER -->
<fo:static-content flow-name="xsl-region-after" height="10cm">
<fo:block text-align="left" font-size="9pt" border-bottom-style="solid" border-top-style="solid" border-color="black" >
<fo:table table-layout="fixed" width="100%" >
<fo:table-column column-width="198mm" />
<fo:table-column column-width="2mm" />
<fo:table-body>
<fo:table-row>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="1mm" margin-bottom="0.5mm" >
Customer
</fo:block>
</fo:block-container>
</fo:table-cell>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="1mm" margin-bottom="0.5mm" >
<fo:page-number/>
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>
</fo:table-body>
</fo:table>
</fo:block>
</fo:static-content>
<!-- TERMINA EL FOOTER -->

<!-- BODY -->
<fo:flow flow-name="xsl-region-body" >
<fo:block text-align="justify" font-size="9pt" >
<fo:table table-layout="fixed" width="100%" >
<fo:table-column column-width="200mm" />
<fo:table-body>

<!-- SECCION DE CAMPOS DINAMICOS -->
<fo:table-row>
<fo:table-cell>
<fo:block font-size="11pt" >
<fo:table table-layout="fixed" width="100%" >
<fo:table-column column-width="200mm" />
<fo:table-column column-width="200mm" />
<fo:table-body>
<xsl:for-each select="seccion_campos">
<fo:table-row>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="6mm" margin-bottom="0mm" font-weight="bold" >
<xsl:value-of select="titulo_txt" />
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>
<fo:table-row>
<fo:table-cell>
<fo:block-container >
<fo:block margin-left="0mm" margin-top="3mm" margin-bottom="0mm" linefeed-treatment='preserve' >
<!-- <xsl:value-of select="descripcion_txt" /> -->
<xsl:call-template name="zero_width_space_1">
<xsl:with-param name="data" select="descripcion_txt"/>
</xsl:call-template>
</fo:block>
</fo:block-container>
</fo:table-cell>
</fo:table-row>
</xsl:for-each>
</fo:table-body>
</fo:table>
</fo:block>
</fo:table-cell>
</fo:table-row>
<!-- TERMINA SECCION DE CAMPOS DINAMICOS -->

</fo:table-body>
</fo:table>
</fo:block>
<fo:block id="TheVeryLastPage"> </fo:block>
</fo:flow>
<!-- TERMINA EL BODY -->

</fo:page-sequence>
</fo:root>
</xsl:template>
</xsl:stylesheet>

  Discussion posts and replies are publicly visible