getFragmentIndexForTextIndex method
Find text fragment index for the specified text index.
If the specified text index is out of range, it returns -1.
Implementation
int getFragmentIndexForTextIndex(int textIndex) {
final index = fragments.lowerBound(
_PdfPageTextFragmentForSearch(textIndex), (a, b) => a.index - b.index);
if (index > fragments.length) {
return -1; // range error
}
if (index == fragments.length) {
final f = fragments.last;
if (textIndex >= f.index + f.length) {
return -1; // range error
}
return index - 1;
}
final f = fragments[index];
if (textIndex < f.index) {
return index - 1;
}
return index;
}