Как они разбивают текст на страницы - вы сами говорите "фиг знает". Работает - и тьфу-тьфу. Поэтому любое предложение на практике может разбиться о совершенно непредвиденные "особенности" китайского fb2 ридера. Это 'принятие решений в условиях неопределённости'.
Давайте хотя бы проблему подсчёта страниц оставим программистам?
Суммируя свои сообщения (что-то их слишком много - где народ со свежими идеями???),
хочу предложить такой способ. Понятный и простой.
При запуске fb2-ридера, кроме окна текста нужно создать ещё одно, внизу. Пока пустое, нулевого размера и невидимое. Можно визуально отделять его короткой чертой, или ещё чем...
Загружаем страницу как обычно. ПРОХОДИМ по тексту сверху вниз, и содержимое каждой встретившейся сноски отправляем в нижнее окошко, при этом оно соответственно увеличивается в высоту, заслоняя часть текста книги. ПО ЭТОМУ ТЕКСТУ МЫ УЖЕ НЕ ПРОХОДИМ, поскольку его не видно.
Нижнее окно не может растягиваться более чем вполовину от высоты экрана. Поэтому ОДНА последняя сноска может не поместиться полностью, ставим в конце многоточие. В этом случае через "Меню->Все сноски" мы можем открыть отдельно от текста окошко со ВСЕМИ сносками. Говорят, в старых прошивках так было. Эта ситуация, с большими сносками, будет встречаться редко, поэтому горячие клавиши делать не обязательно.
При смене страницы нижнее окошко очищается и прячется. Следующая страница начнётся, разумеется, с того момента, где закончилась предыдущая. Если на предыдущей сноски спрятали три строчки текста, то следующая и начнётся с них. Никакого переноса на следующие листы, как видите.
С ОС отличными от Windows мне иметь дела не приходилось, поэтому, может такой вариант и не прокатит. Жду критики, а лучше - наоборот