Evotec

Project

PSWriteHTML

PSWriteHTML is an open-source PowerShell project with packages, release history, and working documentation.

Stars 995
Forks 114
Open issues 69
PowerShell Gallery downloads 7,436,513
Release v1.41.0
Language: PowerShell Updated: 2026-04-11

API Reference

Function

New-HTMLMarkdown

Namespace PSWriteHTML

Creates HTML content from Markdown text with customizable options.

Remarks

The New-HTMLMarkdown function converts Markdown text to HTML content with various customization options such as strikethrough, emojis, code block styling, table of contents, and more.

Examples

Authored help example

EXAMPLE 1


New-HTMLMarkdown -FilePath "C:\Markdown\example.md" -EnableStrikethrough -EnableEmoji -EnableTOC
        

Converts the Markdown content from the file "example.md" to HTML with strikethrough, emojis, and a table of contents.

EXAMPLE 2


$MarkdownContent = @("## Title", "This is a **bold** text.")
New-HTMLMarkdown -Content $MarkdownContent -EnableMoreStyling -EnableTaskLists
        

Converts the Markdown content in the array with additional styling and task list support.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.

Syntax

New-HTMLMarkdown [-DisableTables] [-EnableBackslashEscapes] [-EnableBackslashEscapesHTMLTags] [-EnableEmoji] [-EnableEncodeEmails] [-EnableGithubCodeBlocks] [-EnableMoreStyling] [-EnableOpenLinksInNewWindow] [-EnableRequireSpaceBeforeHeadingText] [-EnableSimpleLineBreaks] [-EnableStrikethrough] [-EnableTaskLists] [-EnableTOC] [-Encoding <String>] -FilePath <String> [-HeaderLevelStart <Int32>] [-Id <String>] [-omitExtraWLInCodeBlocks] [-SanitezeHTML] [<CommonParameters>]
#
Parameter set: FilePath

Parameters

DisableTables SwitchParameter optionalposition: namedpipeline: False
Switch parameter to disable table rendering.
EnableBackslashEscapes SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes.
EnableBackslashEscapesHTMLTags SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes for HTML tags.
EnableEmoji SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable emoji support.
EnableEncodeEmails SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable email encoding.
EnableGithubCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable GitHub-style code blocks.
EnableMoreStyling SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable additional styling options.
EnableOpenLinksInNewWindow SwitchParameter optionalposition: namedpipeline: False
Switch parameter to open links in a new window.
EnableRequireSpaceBeforeHeadingText SwitchParameter optionalposition: namedpipeline: False
Switch parameter to require space before heading text.
EnableSimpleLineBreaks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable simple line breaks.
EnableStrikethrough SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable strikethrough styling.
EnableTaskLists SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable task lists in Markdown.
EnableTOC SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable table of contents generation.
Encoding String optionalposition: namedpipeline: False
Specifies the encoding for reading the Markdown content file. Default is 'UTF8'.
FilePath String requiredposition: namedpipeline: False
Specifies the path to a file containing Markdown content to convert.
HeaderLevelStart Int32 optionalposition: namedpipeline: False
Specifies the starting header level for Markdown content.
Id String optionalposition: namedpipeline: False
Specifies the ID attribute for the HTML container.
omitExtraWLInCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to omit extra whitespace in code blocks.
SanitezeHTML SwitchParameter optionalposition: namedpipeline: False
Switch parameter to sanitize HTML content.
New-HTMLMarkdown [-DisableTables] [-EnableBackslashEscapes] [-EnableBackslashEscapesHTMLTags] [-EnableEmoji] [-EnableEncodeEmails] [-EnableGithubCodeBlocks] [-EnableMoreStyling] [-EnableOpenLinksInNewWindow] [-EnableRequireSpaceBeforeHeadingText] [-EnableSimpleLineBreaks] [-EnableStrikethrough] [-EnableTaskLists] [-EnableTOC] [-Encoding <String>] [-HeaderLevelStart <Int32>] [-Id <String>] [-omitExtraWLInCodeBlocks] [-SanitezeHTML] -ScriptBlock <ScriptBlock> [<CommonParameters>]
#
Parameter set: ScriptBlock

Parameters

DisableTables SwitchParameter optionalposition: namedpipeline: False
Switch parameter to disable table rendering.
EnableBackslashEscapes SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes.
EnableBackslashEscapesHTMLTags SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes for HTML tags.
EnableEmoji SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable emoji support.
EnableEncodeEmails SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable email encoding.
EnableGithubCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable GitHub-style code blocks.
EnableMoreStyling SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable additional styling options.
EnableOpenLinksInNewWindow SwitchParameter optionalposition: namedpipeline: False
Switch parameter to open links in a new window.
EnableRequireSpaceBeforeHeadingText SwitchParameter optionalposition: namedpipeline: False
Switch parameter to require space before heading text.
EnableSimpleLineBreaks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable simple line breaks.
EnableStrikethrough SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable strikethrough styling.
EnableTaskLists SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable task lists in Markdown.
EnableTOC SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable table of contents generation.
Encoding String optionalposition: namedpipeline: False
Specifies the encoding for reading the Markdown content file. Default is 'UTF8'.
HeaderLevelStart Int32 optionalposition: namedpipeline: False
Specifies the starting header level for Markdown content.
Id String optionalposition: namedpipeline: False
Specifies the ID attribute for the HTML container.
omitExtraWLInCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to omit extra whitespace in code blocks.
SanitezeHTML SwitchParameter optionalposition: namedpipeline: False
Switch parameter to sanitize HTML content.
ScriptBlock ScriptBlock requiredposition: 0pipeline: False
Specifies a script block containing Markdown content to convert.
New-HTMLMarkdown -Content <Array> [-DisableTables] [-EnableBackslashEscapes] [-EnableBackslashEscapesHTMLTags] [-EnableEmoji] [-EnableEncodeEmails] [-EnableGithubCodeBlocks] [-EnableMoreStyling] [-EnableOpenLinksInNewWindow] [-EnableRequireSpaceBeforeHeadingText] [-EnableSimpleLineBreaks] [-EnableStrikethrough] [-EnableTaskLists] [-EnableTOC] [-Encoding <String>] [-HeaderLevelStart <Int32>] [-Id <String>] [-omitExtraWLInCodeBlocks] [-SanitezeHTML] [<CommonParameters>]
#
Parameter set: Content

Parameters

Content Array requiredposition: namedpipeline: False
Specifies an array of Markdown content to convert.
DisableTables SwitchParameter optionalposition: namedpipeline: False
Switch parameter to disable table rendering.
EnableBackslashEscapes SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes.
EnableBackslashEscapesHTMLTags SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable backslash escapes for HTML tags.
EnableEmoji SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable emoji support.
EnableEncodeEmails SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable email encoding.
EnableGithubCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable GitHub-style code blocks.
EnableMoreStyling SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable additional styling options.
EnableOpenLinksInNewWindow SwitchParameter optionalposition: namedpipeline: False
Switch parameter to open links in a new window.
EnableRequireSpaceBeforeHeadingText SwitchParameter optionalposition: namedpipeline: False
Switch parameter to require space before heading text.
EnableSimpleLineBreaks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable simple line breaks.
EnableStrikethrough SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable strikethrough styling.
EnableTaskLists SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable task lists in Markdown.
EnableTOC SwitchParameter optionalposition: namedpipeline: False
Switch parameter to enable table of contents generation.
Encoding String optionalposition: namedpipeline: False
Specifies the encoding for reading the Markdown content file. Default is 'UTF8'.
HeaderLevelStart Int32 optionalposition: namedpipeline: False
Specifies the starting header level for Markdown content.
Id String optionalposition: namedpipeline: False
Specifies the ID attribute for the HTML container.
omitExtraWLInCodeBlocks SwitchParameter optionalposition: namedpipeline: False
Switch parameter to omit extra whitespace in code blocks.
SanitezeHTML SwitchParameter optionalposition: namedpipeline: False
Switch parameter to sanitize HTML content.