Package com.openhtmltopdf.layout
Class UrlAwareLineBreakIterator
- java.lang.Object
-
- com.openhtmltopdf.layout.UrlAwareLineBreakIterator
-
- All Implemented Interfaces:
FSTextBreaker
public class UrlAwareLineBreakIterator extends java.lang.Object implements FSTextBreaker
BreakIterator implementation that improves line breaking for URLs. Break points are supported before path fragments.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classUrlAwareLineBreakIterator.Range
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.StringBREAKING_CHARSprivate UrlAwareLineBreakIterator.RangecurrentRangeprivate java.text.BreakIteratordelegateprivate java.lang.Stringtext
-
Constructor Summary
Constructors Constructor Description UrlAwareLineBreakIterator(java.text.BreakIterator breaker)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanadvanceDelegate()private voidcheckNotAheadOfDelegate()private intfindSlashInRange(UrlAwareLineBreakIterator.Range searchRange)private booleanisDelegateInSync()intnext()voidsetText(java.lang.String newText)private java.lang.Stringsubstring(UrlAwareLineBreakIterator.Range range)private UrlAwareLineBreakIterator.RangetrimSearchRange(UrlAwareLineBreakIterator.Range searchRange)
-
-
-
Field Detail
-
BREAKING_CHARS
private static final java.lang.String BREAKING_CHARS
- See Also:
- Constant Field Values
-
delegate
private final java.text.BreakIterator delegate
-
text
private java.lang.String text
-
currentRange
private UrlAwareLineBreakIterator.Range currentRange
-
-
Method Detail
-
next
public int next()
- Specified by:
nextin interfaceFSTextBreaker
-
trimSearchRange
private UrlAwareLineBreakIterator.Range trimSearchRange(UrlAwareLineBreakIterator.Range searchRange)
-
findSlashInRange
private int findSlashInRange(UrlAwareLineBreakIterator.Range searchRange)
-
substring
private java.lang.String substring(UrlAwareLineBreakIterator.Range range)
-
checkNotAheadOfDelegate
private void checkNotAheadOfDelegate()
-
isDelegateInSync
private boolean isDelegateInSync()
-
advanceDelegate
private boolean advanceDelegate()
-
setText
public void setText(java.lang.String newText)
- Specified by:
setTextin interfaceFSTextBreaker
-
-