Нумерация страниц для документа с переменным содержанием - PullRequest
2 голосов
/ 31 июля 2009

Проект разработан с использованием CakePHP.

На странице есть новостная лента.

Разбивка на страницы проста, если вы хотите вернуть (x) количество записей на странице или (x) количество изображений на странице, или даже ограничить количество слов / абзацев / символов, но что, если вы хотите разбить на страницы визуальная длина страницы?

Проблема возникла из-за того, что некоторые статьи содержат большое количество текста и изображений. Я хотел бы знать, как бы вы развивали нумерацию страниц, когда контент полностью динамичен. Под этим я подразумеваю, что это может быть 100% текст, текст и 3 рисунка, 10 рисунков и т. Д.

Код ценится, но даже концепция будет полезна, спасибо!

Ответы [ 2 ]

0 голосов
/ 25 августа 2009

Поскольку мы знаем ширину страницы и высоту изображения, и мы смогли приблизительно высоту пикселя текста.

Затем мы взяли высоту изображений, пробелов и текста и вычли ее из общей допустимой высоты с определенным процентом ошибки, чтобы она не выдвигала изображение на неправильную страницу только потому, что последние 10px превышают лимит.

У нас также есть способ навязать элементы на предыдущую страницу в случае, если изображение или предложение переносится на следующую страницу, что не дает должного вида.

0 голосов
/ 31 июля 2009

Я не знаю cakephp, но как насчет подсчета количества символов?

Допустим, у вас есть 10000 символов в статье, и вы решаете, что на каждой странице должно быть не более 500 слов. При средней длине слова в 5 символов вы переходите к символу 500 * 5 = 2500, ищите следующий заключительный абзац и принимаете этот пункт как метку следующей страницы. Вы можете использовать ту же концепцию с изображениями, но с учетом высоты изображений ...

Звучит хорошо?

...