GNU Info

Info Node: (python2.1-lib.info)formatter

(python2.1-lib.info)formatter


Next: rfc822 Prev: Internet Data Handling Up: Internet Data Handling
Enter node , (file) or (file)node

Generic output formatting
=========================

Generic output formatter and device interface.

This module supports two interface definitions, each with multiple
implementations.  The _formatter_ interface is used by the `HTMLParser'
class of the `htmllib' module, and the _writer_ interface is required
by the formatter interface.

Formatter objects transform an abstract flow of formatting events into
specific output events on writer objects.  Formatters manage several
stack structures to allow various properties of a writer object to be
changed and restored; writers need not be able to handle relative
changes nor any sort of "change back" operation.  Specific writer
properties which may be controlled via formatter objects are horizontal
alignment, font, and left margin indentations.  A mechanism is provided
which supports providing arbitrary, non-exclusive style settings to a
writer as well.  Additional interfaces facilitate formatting events
which are not reversible, such as paragraph separation.

Writer objects encapsulate device interfaces.  Abstract devices, such
as file formats, are supported as well as physical devices.  The
provided implementations all work with abstract devices.  The interface
makes available mechanisms for setting the properties which formatter
objects manage and inserting data into the output.

Formatter Interface
Formatter Implementations
Writer Interface
Writer Implementations

automatically generated by info2www version 1.2.2.9