TFormattingWriter class
Abstract base class for formatted document writers
Declaration
TFormattingWriter = classDescends from it: THTMLWriter TMarkdownWriter TTextWriter TTexWriter
Description
TFormattingWriter is an abstract base class that defines the interface for creating formatted documents.
It provides methods for document structure (headers, paragraphs), text formatting (bold, italic, underline), tables, and lists.
Descendant classes implement the specific formatting for different output formats such as HTML, LaTeX, or plain text.
The class writes output to a stream provided during construction. Most methods are virtual and should be overridden by descendant classes to provide format-specific implementation.
See also
Properties
Stream | protected |
Methods
Create | public | Creates a new formatting writer instance |
EscapeText | public | Escapes text for the target format |
Dump | public | Writes raw text directly to the output stream |
DumpLn | public | Writes raw text followed by line ending to the output stream |
Write | public | Writes escaped text to the output stream |
WriteFmt | public | Writes formatted text using Format function |
DocumentStart | public | Begins a new document |
DocumentEnd | public | Ends the current document |
Header | public | Writes a complete header at the specified level |
HeaderStart | public | Begins a header at the specified level |
HeaderEnd | public | Ends a header at the specified level |
ParagraphStart | public | Begins a new paragraph |
ParagraphEnd | public | Ends the current paragraph |
LineBreak | public | Inserts a line break |
Rule | public | Inserts a horizontal rule |
BoldStart | public | Begins bold text formatting |
BoldEnd | public | Ends bold text formatting |
ItalicStart | public | Begins italic text formatting |
ItalicEnd | public | Ends italic text formatting |
UnderlineStart | public | Begins underlined text formatting |
UnderlineEnd | public | Ends underlined text formatting |
PreformatStart | public | Begins preformatted text block |
PreformatEnd | public | Ends preformatted text block |
TableStart | public | Begins a table with specified columns and border |
TableEnd | public | Ends the current table |
RowStart | public | Begins a new table row |
RowEnd | public | Ends the current table row |
RowNext | public | Moves to the next table row |
CellStart | public | Begins a new table cell |
CellEnd | public | Ends the current table cell |
CellNext | public | Moves to the next table cell |
HeaderCellStart | public | Begins a new table header cell |
HeaderCellEnd | public | Ends the current table header cell |
HeaderCellNext | public | Moves to the next table header cell |
ListStart | public | Begins a list of the specified type |
ListEnd | public | Ends a list of the specified type |
ListItemStart | public | Begins a new list item |
ListItemEnd | public | Ends the current list item |
ListItem | public | Creates a complete list item with text |
DefinitionItem | public | Creates a definition list item with name and description |
WriteList | public | Writes a complete list from string list |
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
