public boolean isSplitCharacter(int startIdx,
int current,
int endIdx,
char[] cc,
PdfChunk[] ck) {
++current;
if (current == endIdx)
{
return false;
}
if (!(chars == cc && this.start == startIdx && this.end == endIdx))
{
chars = cc;
this.start = startIdx;
this.end = endIdx;
breakIter.setText(new ArrayCharIterator(cc, startIdx, endIdx));
boundary = new boolean[endIdx - startIdx + 1];
lastBoundary = breakIter.first();
if (lastBoundary != BreakIterator.DONE)
{
boundary[lastBoundary - startIdx] = true;
}
}
while (current > lastBoundary)
{
lastBoundary = breakIter.next();
if (lastBoundary == BreakIterator.DONE)
{
lastBoundary = Integer.MAX_VALUE;
}
else
{
boundary[lastBoundary - startIdx] = true;
}
}
return boundary[current - startIdx];
}
|