xsl-list
[Top] [All Lists]

Re: [xsl] Line break algorithm

2020-05-04 09:07:01
For a more complete i18n-aware solution I integrated ICU4J's word and line 
break features into Saxon extensions in my DITA Community i18n project:

https://github.com/dita-community/org.dita-community.i18n

While this is set up to integrate with the DITA Open Toolkit, the Saxon 
extensions are generic and should be useful in any Saxon context. Note that I 
haven't touched this code since before Saxon 10 was released so it might need a 
little attention, so if you try it and find an issue, don't hesitate to log an 
issue.

Cheers,

E.

--
Eliot Kimber
http://contrext.com
 

On 5/2/20, 7:45 PM, "Rick Quatro rick(_at_)rickquatro(_dot_)com" 
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:

    Hi All, 
     
    I have lines in my input that I want to add <break> elements to in my 
output. For example, this might be the input:
     
    <xsl:param name="line" select="'Takeoff from Unlisted and Alternate 
Airports'"/>
     
    and I want to replace a space with a <break> so that each line doesn't 
exceed, for example, 35 characters
     
    <line>Takeoff from Unlisted and Alternate<break/>Airports</line>
     
    I am thinking the I can tokenize the line and then recursively build the 
string back up from the beginning, checking its length. Any other suggestions 
on a general-purpose algorithm that I can use in XSLT 3 would be appreciated. 
Thanks in advance.
     
    Rick
     
    Rick Quatro
    Carmen Publishing Inc.
    rick(_at_)frameexpert(_dot_)com
    585-729-6746
    www.frameexpert.com/store/ <http://www.frameexpert.com/store/>
    
    XSL-List info and archive 
<http://www.mulberrytech.com/xsl/xsl-list>EasyUnsubscribe 
<http://lists.mulberrytech.com/unsub/xsl-list/1278982>
    (by email <>)
    
    
    
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>