⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tohtml.py

📁 ft235 freetype 2.3. 5 freetype 2.3.5
💻 PY
📖 第 1 页 / 共 2 页
字号:
                lines.append( self.make_html_code( item.lines ) )            else:                lines.append( self.make_html_para( item.words ) )        return string.join( lines, '\n' )    def  print_html_items( self, items ):        print self.make_html_items( items )    def print_html_field( self, field ):        if field.name:            print "<table><tr valign=top><td><p><b>"+field.name+"</b></p></td><td>"        print self.make_html_items( field.items )        if field.name:            print "</td></tr></table>"    def html_source_quote( self, line, block_name = None ):        result = ""        while line:            m = re_source_crossref.match( line )            if m:                name   = m.group(2)                prefix = html_quote( m.group(1) )                length = len( m.group(0) )                if name == block_name:                    # this is the current block name, if any                    result = result + prefix + '<b>' + name + '</b>'                elif re_source_keywords.match(name):                    # this is a C keyword                    result = result + prefix + keyword_prefix + name + keyword_suffix                elif self.identifiers.has_key(name):                    # this is a known identifier                    block = self.identifiers[name]                    result = result + prefix + '<a href="' + \                             self.make_block_url(block) + '">' + name + '</a>'                else:                    result = result + html_quote(line[:length])                line = line[length:]            else:                result = result + html_quote(line)                line   = []        return result    def print_html_field_list( self, fields ):        print "<table cellpadding=3 border=0>"        for field in fields:            if len(field.name) > 22:              print "<tr valign=top><td colspan=0><b>"+field.name+"</b></td></tr>"              print "<tr valign=top><td></td><td>"            else:              print "<tr valign=top><td><b>" + field.name + "</b></td><td>"            self.print_html_items( field.items )            print "</td></tr>"        print "</table>"    def print_html_markup( self, markup ):        table_fields = []        for field in markup.fields:            if field.name:                # we begin a new series of field or value definitions, we                # will record them in the 'table_fields' list before outputting                # all of them as a single table                #                table_fields.append( field )            else:                if table_fields:                    self.print_html_field_list( table_fields )                    table_fields = []                self.print_html_items( field.items )        if table_fields:            self.print_html_field_list( table_fields )    #    #  Formatting the index    #    def  index_enter( self ):        print self.html_header        self.index_items = {}    def  index_name_enter( self, name ):        block = self.identifiers[name]        url   = self.make_block_url( block )        self.index_items[name] = url    def  index_exit( self ):        # block_index already contains the sorted list of index names        count = len( self.block_index )        rows  = (count + self.columns - 1) / self.columns        print "<table align=center border=0 cellpadding=0 cellspacing=0>"        for r in range(rows):            line = "<tr>"            for c in range(self.columns):                i = r + c*rows                if i < count:                    bname = self.block_index[r + c * rows]                    url   = self.index_items[bname]                    line = line + '<td><a href="' + url + '">' + bname + '</a></td>'                else:                    line = line + '<td></td>'            line = line + "</tr>"            print line        print "</table>"        print index_footer_start + \              self.file_prefix + "toc.html" + \              index_footer_end        self.index_items = {}    def  index_dump( self, index_filename = None ):        if index_filename == None:            index_filename = self.file_prefix + "index.html"        Formatter.index_dump( self, index_filename )    #    #  Formatting the table of content    #    def  toc_enter( self ):        print self.html_header        print "<center><h1>Table of Contents</h1></center>"    def  toc_chapter_enter( self, chapter ):        print  chapter_header + string.join(chapter.title) + chapter_inter        print "<table cellpadding=5>"    def  toc_section_enter( self, section ):        print "<tr valign=top><td>"        print '<a href="' + self.make_section_url( section ) + '">' + \               section.title + '</a></td><td>'        print self.make_html_para( section.abstract )    def  toc_section_exit( self, section ):        print "</td></tr>"    def  toc_chapter_exit( self, chapter ):        print "</table>"        print  chapter_footer    def  toc_index( self, index_filename ):        print chapter_header + '<a href="' + index_filename + '">Global Index</a>' + chapter_inter + chapter_footer    def  toc_exit( self ):        print self.html_footer    def  toc_dump( self, toc_filename = None, index_filename = None ):        if toc_filename == None:            toc_filename = self.file_prefix + "toc.html"        if index_filename == None:            index_filename = self.file_prefix + "index.html"        Formatter.toc_dump( self, toc_filename, index_filename )    #    #  Formatting sections    #    def  section_enter( self, section ):        print self.html_header        print section_title_header        print section.title        print section_title_footer        maxwidth = 0        for b in section.blocks.values():            if len( b.name ) > maxwidth:                maxwidth = len( b.name )        width  = 70  # XXX magic number        if maxwidth <> 0:            # print section synopsis            print section_synopsis_header            print "<table align=center cellspacing=5 cellpadding=0 border=0>"            columns = width / maxwidth            if columns < 1:                columns = 1            count = len( section.block_names )            rows  = ( count + columns - 1 ) / columns            for r in range( rows ):                line = "<tr>"                for c in range( columns ):                    i = r + c * rows                    line = line + '<td></td><td>'                    if i < count:                        name = section.block_names[i]                        line = line + '<a href="#' + name + '">' + name + '</a>'                    line = line + '</td>'                line = line + "</tr>"                print line            print "</table><br><br>"            print section_synopsis_footer        print description_header        print self.make_html_items( section.description )        print description_footer    def  block_enter( self, block ):        print block_header        # place html anchor if needed        if block.name:            print '<h4><a name="' + block.name + '">' + block.name + '</a></h4>'        # dump the block C source lines now        if block.code:            print source_header            for l in block.code:                print self.html_source_quote( l, block.name )            print source_footer    def  markup_enter( self, markup, block ):        if markup.tag == "description":            print description_header        else:            print marker_header + markup.tag + marker_inter        self.print_html_markup( markup )    def  markup_exit( self, markup, block ):        if markup.tag == "description":            print description_footer        else:            print marker_footer    def  block_exit( self, block ):        print block_footer_start + self.file_prefix + "index.html" + \              block_footer_middle + self.file_prefix + "toc.html" + \              block_footer_end    def  section_exit( self, section ):        print html_footer    def section_dump_all( self ):        for section in self.sections:            self.section_dump( section, self.file_prefix + section.name + '.html' )# eof

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -