Subject: [xsl] Re: [XSL-FO] Linebreaks on a page break (linefeed-treatment) From: "Mathias Leclercq mathias.leclercq@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx> Date: Thu, 5 Jul 2018 05:43:32 -0000 |
Hello guys, So I did a recursive named template with the code below and the line-breaks are effectively transformed. I still had the problem though but because my empty blocks were in a <fo:inline> node. I removed the inline node and now it's working! Thanks a lot for your help! For further reference: [XSLT 1.0] [XSL-FO] [FOP 1.0] Fix for line-feed issue on page-break with different page layouts (margin left and right) - No <fo:block> inside <fo:inline> - Replace line-feed 
 with  <fo:block/> with a recursive named template - Remove linefeed-treatment="preserve" and keep-together.within-page="always" attributes <xsl:template name="gReplaceLineBreak"> <xsl:param name="pString"/> <xsl:choose> <xsl:when test="substring-before($pString,'
')"> <xsl:value-of select="substring-before($pString,'
')"/> <fo:block/> <xsl:call-template name="gReplaceLineBreak"> <xsl:with-param name="pString" select="substring-after($pString,'
')"/> </xsl:call-template> </xsl:when> <xsl:otherwise> <xsl:value-of select="$pString"/> </xsl:otherwise> </xsl:choose> </xsl:template> From: Flynn, Peter <pflynn@xxxxxx> Sent: Monday, July 2, 2018 10:01 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [XSL-FO] Linebreaks on a page break (linefeed-treatment) On 2018-07-02 08:31:06+01:00 Mathias Leclercq mathias.leclercq@xxxxxxxxx<mailto:mathias.leclercq@xxxxxxxxx> wrote: Someone suggested me to replace linefeed characters in my text area with an empty block <fo:block></fo:block>. Problem is, I don't know what character to look for (xml is encoded in utf-8 on a windows machine). The numeric character entity 
 matches a newline, so replace(textArea,'
[
]*','
') will replace all multiple newlines with a single newline. If you are constrained to using XPath 1.0, you could write a recursive named template to do the job, testing for two newlines each time, and replacing with one, until no double newlines are left, then emitting an <fo:block/> ///Peter
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Re: [XSL-FO] Linebreaks on a , Flynn, Peter pflynn@ | Thread | [xsl] XSL-List Guidelines, Tommie Usdin btusdin |
Re: [xsl] XSLT 2+ Options for PHP?, Eliot Kimber ekimber | Date | [xsl] Techniques for Sorting and Re, Eliot Kimber ekimber |
Month |