как реализовать 'разрыв страницы' в epub читателе

Какая-либо идея, как реализовать 'разрыв страницы' в epub читателе? .epub является только страницами HTML, и epub читатель представляет те страницы HTML. но я задаюсь вопросом, как некоторые epub читатели как Adobe Digital Edition реализовали разрыв страницы. Там, когда мы переходим к любой странице, Вы не найдете половину отображенной строки (т.е. только верхняя часть букв, которыми видимая и более низкая часть будет в следующей странице), или половина изображений, где другая часть в следующей странице. Как продвинуть строку к следующей странице, если я не могу отобразить ее полностью на текущей странице?

11
задан ganapati 11 May 2010 в 07:01
поделиться

2 ответа

EPUB на самом деле не имеет концепции страниц - он предназначен для перекомпоновки содержимого, которое перетекает в соответствии с размерами контейнера отображения. Итак, то, что вы предлагаете, - это своего рода взлом.

Тем не менее, пользователям удобно работать со страницами, и большинство читателей реализуют некоторую концепцию страницы.

Что вам нужно, так это реализовать что-то вроде алгоритма разбиения страниц Кнута, который, в свою очередь, зависит от его абзаца и алгоритмов разбиения строк. Полный грамотный код см. В его книге TeX (IIRC, он на Паскале). (Это не такой уж и сложный фрагмент кода - я реализовал его в программе настольных издательских систем, которую написал много лет назад).

Если вы пошли по этому пути, это означает, что вы, вероятно, не смогли бы использовать UIWebView.

Кстати, Adobe Digital Edition реализует вариант алгоритма Кнута.

1
ответ дан 3 December 2019 в 10:03
поделиться

Не имея окончательного ответа, вы можете:

0
ответ дан 3 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: