|
|
ru.website- RU.WEBSITE ------------------------------------------------------------------- From : Vsevolod Lutovinov 2:5020/69.20 26 Dec 2000 23:49:00 To : Serge Shikov Subject : wap/wml -------------------------------------------------------------------------------- 26 Dec 00 11:25, you wrote to All: >> Так это же ничем не отличается от построения двунаправленного >> списка, в котором элементы сгруппированы по несколько и размер >> групп ограничен. Идешь по исходному списку данных, подсчитываешь >> длину каждого элемента. Останавливаешься тогда, когда суммарный >> размер превысит некоторое значение. SS> Вот я и спрашиваю, как ты собрался на XSLT оценивать суммарный размер? Условно карта состоит из 3 частей: header, body, footer. Размер header+footer == размер карты без body (прописывается как константа). Размер body == сумма размеров элементов списка. Размер элемента списка == размер "окружения" текста + длина текста. Размер "окружения" текста == (размер элемента списка из 1 буквы) - 1, тоже прописывается константой. Подсчет элементов для карты: total_size = EMPTY_CARD_SIZE; start_element = current_element; N = 0; while( hasElements ) { element_size = EMPTY_ELEMENT_SIZE + textLength( current_element ); break if( element_size + total_size > MAX_CARD_SIZE ); total_size += element_size; N++; } Теперь отматываем назад до start_element, формируем карту из N элементов и так продолжаем до конца списка. HЗ байт в 50 вполне хватит для всяких непредвиденных случаев :) >> Формируешь первую карту, >> проставляешь в ней ссылку на следующую. Продолжаешь идти по списку >> дальше, предварительно начав вторую карту со ссылки назад. SS> А вот насчет ссылок назад я бы попросил... Кнопочка back для этого SS> есть ;-) Кнопка Back не помогает, если не все влезло, список может апдейтиться или при листании нужно проверять какой-нибудь session id. --- GoldED/386 3.0.1-asa6 * Origin: [ http://favomark.com ] (2:5020/69.20) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.website/33063a49205f.html, оценка из 5, голосов 10
|