+ // combine underlined H1/H2 in single line
+ page = doc->page;
+ while(page) {
+ line = page->line;
+ while(line) {
+ if((CHECK_BIT(line->bits, IS_H1) ||
+ CHECK_BIT(line->bits, IS_H2)) &&
+ CHECK_BIT(line->bits, IS_EMPTY) &&
+ line->prev &&
+ !CHECK_BIT(line->prev->bits, IS_EMPTY)) {
+
+ // remove line from linked list
+ line->prev->next = line->next;
+ line->next->prev = line->prev;
+
+ // set bits on revious line
+ if(CHECK_BIT(line->bits, IS_H1)) {
+ SET_BIT(line->prev->bits, IS_H1);
+ } else {
+ SET_BIT(line->prev->bits, IS_H2);
+ }
+
+ // delete line
+ (line->text->delete)(line->text);
+ free(line);
+ }
+ line = line->next;
+ }
+ page = page->next;
+ }
+