# Routines for HTML handling of an RFC # load these after loading html-to-ascii.pl because they redefine some things. # Gosh, it sure would be nice to have an object oriented language for this, # so I didn't have to duplicate code in both files. # Jim Davis, July 15 1994 # 3 Aug 94 changed META tag handling. $lines_per_page = 58; $columns_per_line = 72; # Need this info to generate header lines. $author = "(no author)"; $status = "Internet Draft"; $title = "(no title)"; $date = "(no date)"; # The values are read from META elements in the HEAD, e.g. # # # # number of blank lines after header, before text. $top_skip = 2; # blank lines before footer $bottom_skip = 2; $bottom_margin = $lines_per_page - $bottom_skip - 1 ; $End{"HEAD"} = "end_head"; sub end_head { local ($element) = @_; &set_header_variables_from_meta_tags(); $ignore_text = 0;} sub set_header_variables_from_meta_tags { $author = $Variable{"author"}; $status = $Variable{"status"}; $title = $Variable{"title"}; $date = $Variable{"date"};} # Called by tformat sub do_header { local ($save_left) = $left_margin; local ($save_right) = $right_margin; $left_margin = 1; $right_margin = $columns_per_line; &print_lcr_line ($status, $title, $date); $left_margin = $save_left; $right_margin = $save_right; &print_blank_lines ($top_skip);} sub do_footer { &print_blank_lines ($bottom_skip); local ($save_left) = $left_margin; local ($save_right) = $right_margin; $left_margin = 1; $right_margin = $columns_per_line; &print_lcr_line ($author, "", "[Page $page]"); $left_margin = $save_left; $right_margin = $save_right; print "\014\n"; $page++;} $End{"BODY"} = "end_document"; sub end_document { local ($element) = @_; # might not want to fill the last page $fill_page_length = $flush_last_page; &finish_page ();} 1;