final boolean endsWithHyphen = checkEndsWithHyphen
&& foText.charAt(lastIndex) == CharUtilities.SOFT_HYPHEN;
Font font = FontSelector.selectFontForCharactersInText
( foText, thisStart, lastIndex, foText, this );
AreaInfo areaInfo;
if ( font.performsSubstitution() || font.performsPositioning() ) {
areaInfo = processWordMapping
( lastIndex, font, prevAreaInfo, breakOpportunity ? ch : 0, endsWithHyphen, level );
} else {
areaInfo = processWordNoMapping
( lastIndex, font, prevAreaInfo, breakOpportunity ? ch : 0, endsWithHyphen, level );