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 class
UrlAwareLineBreakIterator.Range
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
BREAKING_CHARS
private UrlAwareLineBreakIterator.Range
currentRange
private java.text.BreakIterator
delegate
private java.lang.String
text
-
Constructor Summary
Constructors Constructor Description UrlAwareLineBreakIterator(java.text.BreakIterator breaker)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private boolean
advanceDelegate()
private void
checkNotAheadOfDelegate()
private int
findSlashInRange(UrlAwareLineBreakIterator.Range searchRange)
private boolean
isDelegateInSync()
int
next()
void
setText(java.lang.String newText)
private java.lang.String
substring(UrlAwareLineBreakIterator.Range range)
private UrlAwareLineBreakIterator.Range
trimSearchRange(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:
next
in 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:
setText
in interfaceFSTextBreaker
-
-