1
Программирование / Re: Консольный аналог DjVu Hyperlinks Editor
« : 06 °ЯаХЫм 2015, 20:11:55 »Цитировать
Прога почему-то не создает гиперссылку на самую нижнюю строку на странице.Показал исходники знакомому программисту, объяснил суть задачи. Он сказал что проблема здесь (файл contentm.cpp):
Код: [Выделить]
for (int j=0; j<lines.size()-1; j++)
нужно заменить на Код: [Выделить]
for (int j=0; j<lines.size(); j++)
илиКод: [Выделить]
for (int j=0; j<=lines.size()-1; j++)
Суть думаю понятна: в исходном варианте последняя линия просто не попадала в цикл обработки. Исправление же расширяют границы цикла чтобы он охватывал все линии (от 0 до lines.size()-1 включительно).Пробовал собрать с исправлениями в QtCreatore, собралось, работает вроде правильно (проверял на этих файлах).
Также заметил еще одну особенность: если строка в содержании располагается на двух линиях, то гиперссылка будет сформирована только для второй линии (где встречается номер страницы). В примере, на котором я проверял, такие строки тоже есть. Также такие строки есть в этой книге.