############### HEADERS & FOOTERS ################## # Note: The headers and footers are defined in terms of other variables # as this approach makes it easier for an author to customise them. # Define the first page header !macro PAGE_FIRST_HEADER !if $var{'OPT_HEADINGS'} == 1 HEADER:[[PAGE_FIRST_HEADER_INNER1]] [[tab]][[PAGE_FIRST_HEADER_CENTER1]] [[tab]][[PAGE_FIRST_HEADER_OUTER1]] !elsif $var{'OPT_HEADINGS'} >= 2 HEADER:[[PAGE_FIRST_HEADER_INNER1]] [[tab]][[PAGE_FIRST_HEADER_CENTER1]] [[tab]][[PAGE_FIRST_HEADER_OUTER1]] [[nl]][[PAGE_FIRST_HEADER_INNER2]] [[tab]][[PAGE_FIRST_HEADER_CENTER2]] [[tab]][[PAGE_FIRST_HEADER_OUTER2]] !endif !endmacro # Define the first page footer !macro PAGE_FIRST_FOOTER !if $var{'OPT_HEADINGS'} == 1 FOOTER:[[PAGE_FIRST_FOOTER_INNER1]] [[tab]][[PAGE_FIRST_FOOTER_CENTER1]] [[tab]][[PAGE_FIRST_FOOTER_OUTER1]] !elsif $var{'OPT_HEADINGS'} == 2 FOOTER:[[PAGE_FIRST_FOOTER_INNER1]] [[tab]][[PAGE_FIRST_FOOTER_CENTER1]] [[tab]][[PAGE_FIRST_FOOTER_OUTER1]] [[nl]][[PAGE_FIRST_FOOTER_INNER2]] [[tab]][[PAGE_FIRST_FOOTER_CENTER2]] [[tab]][[PAGE_FIRST_FOOTER_OUTER2]] !elsif $var{'OPT_HEADINGS'} == 3 FOOTER[size='7pt'][[PAGE_FIRST_FOOTER_INNER1]] [[tab]][[PAGE_FIRST_FOOTER_CENTER1]] [[tab]][[PAGE_FIRST_FOOTER_OUTER1]] [[nl]][[PAGE_FIRST_FOOTER_INNER2]] [[tab]][[PAGE_FIRST_FOOTER_CENTER2]] [[tab]][[PAGE_FIRST_FOOTER_OUTER2]] [[nl]][[PAGE_FIRST_FOOTER_INNER3]] [[tab]][[PAGE_FIRST_FOOTER_CENTER3]] [[tab]][[PAGE_FIRST_FOOTER_OUTER3]] !elsif $var{'OPT_HEADINGS'} >= 4 FOOTER[size='7pt'][[PAGE_FIRST_FOOTER_INNER0]] [[tab]][[PAGE_FIRST_FOOTER_CENTER0]] [[tab]][[PAGE_FIRST_FOOTER_OUTER0]] [[nl]][[PAGE_FIRST_FOOTER_INNER1]] [[tab]][[PAGE_FIRST_FOOTER_CENTER1]] [[tab]][[PAGE_FIRST_FOOTER_OUTER1]] [[nl]][[PAGE_FIRST_FOOTER_INNER2]] [[tab]][[PAGE_FIRST_FOOTER_CENTER2]] [[tab]][[PAGE_FIRST_FOOTER_OUTER2]] [[nl]][[PAGE_FIRST_FOOTER_INNER3]] [[tab]][[PAGE_FIRST_FOOTER_CENTER3]] [[tab]][[PAGE_FIRST_FOOTER_OUTER3]] !endif !endmacro # Define the right page header !macro PAGE_RIGHT_HEADER !if $var{'OPT_HEADINGS'} == 1 HEADER:[[PAGE_RIGHT_HEADER_INNER1]] [[tab]][[PAGE_RIGHT_HEADER_CENTER1]] [[tab]][[PAGE_RIGHT_HEADER_OUTER1]] !elsif $var{'OPT_HEADINGS'} >= 2 HEADER:[[PAGE_RIGHT_HEADER_INNER1]] [[tab]][[PAGE_RIGHT_HEADER_CENTER1]] [[tab]][[PAGE_RIGHT_HEADER_OUTER1]] [[nl]][[PAGE_RIGHT_HEADER_INNER2]] [[tab]][[PAGE_RIGHT_HEADER_CENTER2]] [[tab]][[PAGE_RIGHT_HEADER_OUTER2]] !endif !endmacro # Define the right page footer !macro PAGE_RIGHT_FOOTER !if $var{'OPT_HEADINGS'} == 1 FOOTER:[[PAGE_RIGHT_FOOTER_INNER1]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER1]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER1]] !elsif $var{'OPT_HEADINGS'} == 2 FOOTER:[[PAGE_RIGHT_FOOTER_INNER1]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER1]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER1]] [[nl]][[PAGE_RIGHT_FOOTER_INNER2]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER2]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER2]] !elsif $var{'OPT_HEADINGS'} == 3 FOOTER[size='7pt'][[PAGE_RIGHT_FOOTER_INNER1]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER1]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER1]] [[nl]][[PAGE_RIGHT_FOOTER_INNER2]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER2]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER2]] [[nl]][[PAGE_RIGHT_FOOTER_INNER3]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER3]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER3]] !elsif $var{'OPT_HEADINGS'} >= 4 FOOTER[size='7pt'][[PAGE_RIGHT_FOOTER_INNER0]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER0]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER0]] [[nl]][[PAGE_RIGHT_FOOTER_INNER1]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER1]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER1]] [[nl]][[PAGE_RIGHT_FOOTER_INNER2]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER2]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER2]] [[nl]][[PAGE_RIGHT_FOOTER_INNER3]] [[tab]][[PAGE_RIGHT_FOOTER_CENTER3]] [[tab]][[PAGE_RIGHT_FOOTER_OUTER3]] !endif !endmacro # Define the left page header !macro PAGE_LEFT_HEADER !if $var{'OPT_HEADINGS'} == 1 HEADER:[[PAGE_LEFT_HEADER_INNER1]] [[tab]][[PAGE_LEFT_HEADER_CENTER1]] [[tab]][[PAGE_LEFT_HEADER_OUTER1]] !elsif $var{'OPT_HEADINGS'} >= 2 HEADER:[[PAGE_LEFT_HEADER_OUTER1]] [[tab]][[PAGE_LEFT_HEADER_CENTER1]] [[tab]][[PAGE_LEFT_HEADER_INNER1]] [[nl]][[PAGE_LEFT_HEADER_OUTER2]] [[tab]][[PAGE_LEFT_HEADER_CENTER2]] [[tab]][[PAGE_LEFT_HEADER_INNER2]] !endif !endmacro # Define the left page footer !macro PAGE_LEFT_FOOTER !if $var{'OPT_HEADINGS'} == 1 FOOTER:[[PAGE_LEFT_FOOTER_INNER1]] [[tab]][[PAGE_LEFT_FOOTER_CENTER1]] [[tab]][[PAGE_LEFT_FOOTER_OUTER1]] !elsif $var{'OPT_HEADINGS'} == 2 FOOTER:[[PAGE_LEFT_FOOTER_OUTER1]] [[tab]][[PAGE_LEFT_FOOTER_CENTER1]] [[tab]][[PAGE_LEFT_FOOTER_INNER1]] [[nl]][[PAGE_LEFT_FOOTER_OUTER2]] [[tab]][[PAGE_LEFT_FOOTER_CENTER2]] [[tab]][[PAGE_LEFT_FOOTER_INNER2]] !elsif $var{'OPT_HEADINGS'} == 3 FOOTER[size='7pt'][[PAGE_LEFT_FOOTER_OUTER1]] [[tab]][[PAGE_LEFT_FOOTER_CENTER1]] [[tab]][[PAGE_LEFT_FOOTER_INNER1]] [[nl]][[PAGE_LEFT_FOOTER_OUTER2]] [[tab]][[PAGE_LEFT_FOOTER_CENTER2]] [[tab]][[PAGE_LEFT_FOOTER_INNER2]] [[nl]][[PAGE_LEFT_FOOTER_OUTER3]] [[tab]][[PAGE_LEFT_FOOTER_CENTER3]] [[tab]][[PAGE_LEFT_FOOTER_INNER3]] !elsif $var{'OPT_HEADINGS'} >= 4 FOOTER[size='7pt'][[PAGE_LEFT_FOOTER_OUTER0]] [[tab]][[PAGE_LEFT_FOOTER_CENTER0]] [[tab]][[PAGE_LEFT_FOOTER_INNER0]] [[nl]][[PAGE_LEFT_FOOTER_OUTER1]] [[tab]][[PAGE_LEFT_FOOTER_CENTER1]] [[tab]][[PAGE_LEFT_FOOTER_INNER1]] [[nl]][[PAGE_LEFT_FOOTER_OUTER2]] [[tab]][[PAGE_LEFT_FOOTER_CENTER2]] [[tab]][[PAGE_LEFT_FOOTER_INNER2]] [[nl]][[PAGE_LEFT_FOOTER_OUTER3]] [[tab]][[PAGE_LEFT_FOOTER_CENTER3]] [[tab]][[PAGE_LEFT_FOOTER_INNER3]] !endif !endmacro # Macro to build the left page as a mirror of the right page !macro left_mirror_right_page # Copy the page layout !define PAGE_LEFT_HEADER_BORDER $var{'PAGE_RIGHT_HEADER_BORDER'} !define PAGE_LEFT_HEADER_HEIGHT $var{'PAGE_RIGHT_HEADER_HEIGHT'} !define PAGE_LEFT_HEADER_GAP $var{'PAGE_RIGHT_HEADER_GAP'} !define PAGE_LEFT_FOOTER_BORDER $var{'PAGE_RIGHT_FOOTER_BORDER'} !define PAGE_LEFT_FOOTER_HEIGHT $var{'PAGE_RIGHT_FOOTER_HEIGHT'} !define PAGE_LEFT_FOOTER_GAP $var{'PAGE_RIGHT_FOOTER_GAP'} # Mirror the header !define PAGE_LEFT_HEADER_INNER1 $var{'PAGE_RIGHT_HEADER_INNER1'} !define PAGE_LEFT_HEADER_INNER2 $var{'PAGE_RIGHT_HEADER_INNER2'} !define PAGE_LEFT_HEADER_CENTER1 $var{'PAGE_RIGHT_HEADER_CENTER1'} !define PAGE_LEFT_HEADER_CENTER2 $var{'PAGE_RIGHT_HEADER_CENTER2'} !define PAGE_LEFT_HEADER_OUTER1 $var{'PAGE_RIGHT_HEADER_OUTER1'} !define PAGE_LEFT_HEADER_OUTER2 $var{'PAGE_RIGHT_HEADER_OUTER2'} # Mirror the footer !define PAGE_LEFT_FOOTER_INNER0 $var{'PAGE_RIGHT_FOOTER_INNER0'} !define PAGE_LEFT_FOOTER_INNER1 $var{'PAGE_RIGHT_FOOTER_INNER1'} !define PAGE_LEFT_FOOTER_INNER2 $var{'PAGE_RIGHT_FOOTER_INNER2'} !define PAGE_LEFT_FOOTER_INNER3 $var{'PAGE_RIGHT_FOOTER_INNER3'} !define PAGE_LEFT_FOOTER_CENTER0 $var{'PAGE_RIGHT_FOOTER_CENTER0'} !define PAGE_LEFT_FOOTER_CENTER1 $var{'PAGE_RIGHT_FOOTER_CENTER1'} !define PAGE_LEFT_FOOTER_CENTER2 $var{'PAGE_RIGHT_FOOTER_CENTER2'} !define PAGE_LEFT_FOOTER_CENTER3 $var{'PAGE_RIGHT_FOOTER_CENTER3'} !define PAGE_LEFT_FOOTER_OUTER0 $var{'PAGE_RIGHT_FOOTER_OUTER0'} !define PAGE_LEFT_FOOTER_OUTER1 $var{'PAGE_RIGHT_FOOTER_OUTER1'} !define PAGE_LEFT_FOOTER_OUTER2 $var{'PAGE_RIGHT_FOOTER_OUTER2'} !define PAGE_LEFT_FOOTER_OUTER3 $var{'PAGE_RIGHT_FOOTER_OUTER3'} !endmacro # Macro to build the first page as a copy of the right page !macro first_copy_right_page # Copy the page layout !define PAGE_FIRST_HEADER_BORDER $var{'PAGE_RIGHT_HEADER_BORDER'} !define PAGE_FIRST_HEADER_HEIGHT $var{'PAGE_RIGHT_HEADER_HEIGHT'} !define PAGE_FIRST_HEADER_GAP $var{'PAGE_RIGHT_HEADER_GAP'} !define PAGE_FIRST_FOOTER_BORDER $var{'PAGE_RIGHT_FOOTER_BORDER'} !define PAGE_FIRST_FOOTER_HEIGHT $var{'PAGE_RIGHT_FOOTER_HEIGHT'} !define PAGE_FIRST_FOOTER_GAP $var{'PAGE_RIGHT_FOOTER_GAP'} # Copy the header !define PAGE_FIRST_HEADER_INNER1 $var{'PAGE_RIGHT_HEADER_INNER1'} !define PAGE_FIRST_HEADER_INNER2 $var{'PAGE_RIGHT_HEADER_INNER2'} !define PAGE_FIRST_HEADER_CENTER1 $var{'PAGE_RIGHT_HEADER_CENTER1'} !define PAGE_FIRST_HEADER_CENTER2 $var{'PAGE_RIGHT_HEADER_CENTER2'} !define PAGE_FIRST_HEADER_OUTER1 $var{'PAGE_RIGHT_HEADER_OUTER1'} !define PAGE_FIRST_HEADER_OUTER2 $var{'PAGE_RIGHT_HEADER_OUTER2'} # Copy the footer !define PAGE_FIRST_FOOTER_INNER0 $var{'PAGE_RIGHT_FOOTER_INNER0'} !define PAGE_FIRST_FOOTER_INNER1 $var{'PAGE_RIGHT_FOOTER_INNER1'} !define PAGE_FIRST_FOOTER_INNER2 $var{'PAGE_RIGHT_FOOTER_INNER2'} !define PAGE_FIRST_FOOTER_INNER3 $var{'PAGE_RIGHT_FOOTER_INNER3'} !define PAGE_FIRST_FOOTER_CENTER0 $var{'PAGE_RIGHT_FOOTER_CENTER0'} !define PAGE_FIRST_FOOTER_CENTER1 $var{'PAGE_RIGHT_FOOTER_CENTER1'} !define PAGE_FIRST_FOOTER_CENTER2 $var{'PAGE_RIGHT_FOOTER_CENTER2'} !define PAGE_FIRST_FOOTER_CENTER3 $var{'PAGE_RIGHT_FOOTER_CENTER3'} !define PAGE_FIRST_FOOTER_OUTER0 $var{'PAGE_RIGHT_FOOTER_OUTER0'} !define PAGE_FIRST_FOOTER_OUTER1 $var{'PAGE_RIGHT_FOOTER_OUTER1'} !define PAGE_FIRST_FOOTER_OUTER2 $var{'PAGE_RIGHT_FOOTER_OUTER2'} !define PAGE_FIRST_FOOTER_OUTER3 $var{'PAGE_RIGHT_FOOTER_OUTER3'} !endmacro