Unit 'WMarkDown' Package
[Overview][Classes][Index] [#fcl]

TMarkdownWriter

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Markdown output writer with native Markdown formatting

Declaration

Source position: wmarkdown.pp line 46

type TMarkdownWriter = class(TFormattingWriter)

public

  constructor Create(); override;

  

Creates a new Markdown writer instance

  function EscapeText(); override;

  

Escapes special Markdown characters

  procedure DocumentStart(); override;

  

Begins document with title header

  procedure DocumentEnd; override;

  

Completes document output

  procedure HeaderStart(); override;

  

Begins header with # symbols

  procedure HeaderEnd(); override;

  

Completes header with blank lines

  procedure ParagraphStart; override;

  

Begins paragraph

  procedure ParagraphEnd; override;

  

Completes paragraph with blank lines

  procedure LineBreak; override;

  

Forces line break with trailing spaces

  procedure Rule; override;

  

Writes horizontal rule

  procedure BoldStart; override;

  

Begins bold formatting with double asterisks

  procedure BoldEnd; override;

  

Ends bold formatting with double asterisks

  procedure ItalicStart; override;

  

Begins italic formatting with single asterisk

  procedure ItalicEnd; override;

  

Ends italic formatting with single asterisk

  procedure UnderlineStart; override;

  

Begins underline formatting with HTML tag

  procedure UnderlineEnd; override;

  

Ends underline formatting with HTML tag

  procedure PreformatStart; override;

  

Begins preformatted code block

  procedure PreformatEnd; override;

  

Ends preformatted code block

  procedure TableStart(); override;

  

Begins Markdown table with pipe separators

  procedure TableEnd; override;

  

Completes table output

  procedure RowStart; override;

  

Begins table row with pipe

  procedure RowEnd; override;

  

Completes table row with separator line

  procedure CellStart; override;

  

Begins table cell with spacing

  procedure CellEnd; override;

  

Completes table cell with pipe separator

  procedure HeaderCellStart; override;

  

Begins table header cell

  procedure HeaderCellEnd; override;

  

Completes table header cell

  procedure ListStart(); override;

  

Begins list with blank line

  procedure ListEnd(); override;

  

Completes list with blank line

  procedure ListItemStart; override;

  

Begins list item with dash bullet

  procedure ListItemEnd; override;

  

Completes list item

  procedure DefinitionItem(); override;

  

Writes definition item with term and description

end;

Inheritance

TMarkdownWriter

  

Markdown output writer with native Markdown formatting

|

TFormattingWriter

  

Abstract base class for formatted document writers

|

TObject

Description

TMarkdownWriter generates standard Markdown output from formatted content.

Headers use # symbols (number matches level + 1), bold text uses ** delimiters, italic text uses * delimiters, and underline uses HTML <u> tags. Tables use pipe (|) separators with automatic header row underlining, lists use dash (-) bullets, and code blocks use triple backticks (```).

Special characters are escaped to prevent structural conflicts with Markdown syntax.

See also

TFormattingWriter


Documentation generated on: Mar 09 2026