syncfusion-angular-markdown-converter
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseImplementing Syncfusion Angular Markdown Converter
实现Syncfusion Angular Markdown Converter
The Syncfusion Angular Markdown Converter is a lightweight utility that transforms Markdown-formatted text into clean, semantic HTML. It is typically used alongside the Syncfusion Rich Text Editor (in Markdown mode) to provide a live preview of rendered content.
Syncfusion Angular Markdown Converter是一款轻量工具,可将Markdown格式的文本转换为整洁、语义化的HTML。它通常与Syncfusion富文本编辑器(Markdown模式)配合使用,为渲染内容提供实时预览。
When to Use This Skill
适用场景
- Convert Markdown text to HTML in an Angular application
- Display a live preview of Markdown content as the user types
- Configure conversion behavior (GFM support, line breaks, async mode, error suppression)
- Build a side-by-side Markdown editor and HTML preview layout
- Integrate with the Syncfusion Rich Text Editor
MarkdownConverter.toHtml()
- 在Angular应用中将Markdown文本转换为HTML
- 在用户输入时显示Markdown内容的实时预览
- 配置转换行为(GFM支持、换行、异步模式、错误抑制)
- 构建并排的Markdown编辑器与HTML预览布局
- 将与Syncfusion富文本编辑器集成
MarkdownConverter.toHtml()
Documentation and Navigation Guide
文档与导航指南
Getting Started
快速入门
📄 Read: references/getting-started.md
- Angular CLI setup and project creation
- Installing and
@syncfusion/ej2-markdown-converter@syncfusion/ej2-angular-richtexteditor - CSS imports for the material3 theme
- Required module injection (MarkdownEditor, Image, Link, Toolbar, Table)
- Running the application
📄 阅读: references/getting-started.md
- Angular CLI设置与项目创建
- 安装和
@syncfusion/ej2-markdown-converter@syncfusion/ej2-angular-richtexteditor - 导入material3主题的CSS
- 注入所需模块(MarkdownEditor、Image、Link、Toolbar、Table)
- 运行应用
Convert Markdown to HTML — toHtml API
转换Markdown到HTML — toHtml API
📄 Read: references/tohtml-api.md
- method signature
MarkdownConverter.toHtml() - Basic usage example (standalone, no editor required)
- Supported Markdown elements (headings, lists, tables, links, images, inline styles)
- Using the return value in Angular templates
📄 阅读: references/tohtml-api.md
- 方法签名
MarkdownConverter.toHtml() - 基础使用示例(独立使用,无需编辑器)
- 支持的Markdown元素(标题、列表、表格、链接、图片、内联样式)
- 在Angular模板中使用返回值
Configurable Options
可配置选项
📄 Read: references/configurable-options.md
- interface
MarkdownConverterOptions - — asynchronous conversion for large content
async - — GitHub Flavored Markdown support (default: true)
gfm - — convert single line breaks to
lineBreak(default: false)<br> - — suppress errors on invalid Markdown (default: false)
silence - Full example passing options to
toHtml()
📄 阅读: references/configurable-options.md
- 接口
MarkdownConverterOptions - — 针对大内容的异步转换
async - — GitHub风格Markdown支持(默认:true)
gfm - — 将单个换行转换为
lineBreak(默认:false)<br> - — 抑制无效Markdown的错误(默认:false)
silence - 向传递选项的完整示例
toHtml()
Rich Text Editor Integration
富文本编辑器集成
📄 Read: references/richtexteditor-integration.md
- Splitter-based side-by-side editor and preview layout
- Configuring in Markdown
ejs-richtexteditoreditorMode - Real-time preview using and
onChangeupdateValue() - Toolbar configuration for Markdown editing
- for custom Markdown syntax
MarkdownFormatter - Custom preview toggle button (fullPreview pattern)
- Mobile/device orientation handling with
Browser.isDevice
📄 阅读: references/richtexteditor-integration.md
- 基于拆分器的并排编辑器与预览布局
- 在Markdown 中配置
editorModeejs-richtexteditor - 使用和
onChange实现实时预览updateValue() - Markdown编辑的工具栏配置
- 用于自定义Markdown语法的
MarkdownFormatter - 自定义预览切换按钮(fullPreview模式)
- 使用处理移动端/设备方向
Browser.isDevice
Quick Start
快速开始
Install packages and wire up the converter in three steps:
1. Install packages:
bash
npm install @syncfusion/ej2-markdown-converter
npm install @syncfusion/ej2-angular-richtexteditor2. Import CSS in :
src/styles.csscss
@import '../node_modules/@syncfusion/ej2-base/styles/material3.css';
@import '../node_modules/@syncfusion/ej2-richtexteditor/styles/material3.css';3. Convert Markdown to HTML:
typescript
import { MarkdownConverter } from '@syncfusion/ej2-markdown-converter';
const markdown = '# Hello World\nThis is **Markdown** text.';
const html = MarkdownConverter.toHtml(markdown);
console.log(html);
// Output: <h1>Hello World</h1><p>This is <strong>Markdown</strong> text.</p>分三步安装包并配置转换器:
1. 安装包:
bash
npm install @syncfusion/ej2-markdown-converter
npm install @syncfusion/ej2-angular-richtexteditor2. 在中导入CSS:
src/styles.csscss
@import '../node_modules/@syncfusion/ej2-base/styles/material3.css';
@import '../node_modules/@syncfusion/ej2-richtexteditor/styles/material3.css';3. 转换Markdown到HTML:
typescript
import { MarkdownConverter } from '@syncfusion/ej2-markdown-converter';
const markdown = '# Hello World\nThis is **Markdown** text.';
const html = MarkdownConverter.toHtml(markdown);
console.log(html);
// Output: <h1>Hello World</h1><p>This is <strong>Markdown</strong> text.</p>Common Patterns
常见模式
Pattern 1: Standalone Conversion (No Editor)
模式1:独立转换(无编辑器)
When you only need to convert a Markdown string to HTML without an editor UI:
typescript
import { MarkdownConverter } from '@syncfusion/ej2-markdown-converter';
const html = MarkdownConverter.toHtml(markdownString);
document.getElementById('preview')!.innerHTML = html as string;当你只需要将Markdown字符串转换为HTML而不需要编辑器UI时:
typescript
import { MarkdownConverter } from '@syncfusion/ej2-markdown-converter';
const html = MarkdownConverter.toHtml(markdownString);
document.getElementById('preview')!.innerHTML = html as string;Pattern 2: Live Preview on Keyup
模式2:按键实时预览
Convert on every keystroke inside a Rich Text Editor textarea:
typescript
public markDownConversion(): void {
const textarea = this.editorObj.contentModule.getEditPanel() as HTMLTextAreaElement;
const previewEl = document.getElementById('html-view') as HTMLElement;
previewEl.innerHTML = MarkdownConverter.toHtml(textarea.value) as string;
}在富文本编辑器文本区域中,每次按键时进行转换:
typescript
public markDownConversion(): void {
const textarea = this.editorObj.contentModule.getEditPanel() as HTMLTextAreaElement;
const previewEl = document.getElementById('html-view') as HTMLElement;
previewEl.innerHTML = MarkdownConverter.toHtml(textarea.value) as string;
}Pattern 3: Conversion with Options
模式3:带选项的转换
Disable GFM and enable line-break conversion:
typescript
const html = MarkdownConverter.toHtml(markdownString, {
gfm: false,
lineBreak: true
});禁用GFM并启用换行转换:
typescript
const html = MarkdownConverter.toHtml(markdownString, {
gfm: false,
lineBreak: true
});Pattern 4: Side-by-Side Preview with Splitter
模式4:带拆分器的并排预览
For a full editor + preview experience, use the Syncfusion Splitter component alongside the Rich Text Editor in Markdown mode. The preview pane is updated via on every change event.
📄 Read: references/richtexteditor-integration.md for the full implementation.
updateValue()如需完整的编辑器+预览体验,可将Syncfusion拆分器组件与Markdown模式下的富文本编辑器配合使用。预览面板会在每次变更事件时通过更新。
📄 阅读: references/richtexteditor-integration.md 获取完整实现。
updateValue()Key Props / API
关键属性/API
| API | Type | Default | Purpose |
|---|---|---|---|
| static method | — | Converts Markdown string to HTML |
| boolean | | Async conversion for large content |
| boolean | | GitHub Flavored Markdown support |
| boolean | | Single line breaks → |
| boolean | | Suppress errors on invalid Markdown |
| API | 类型 | 默认值 | 用途 |
|---|---|---|---|
| 静态方法 | — | 将Markdown字符串转换为HTML |
| 布尔值 | | 针对大内容的异步转换 |
| 布尔值 | | GitHub风格Markdown支持 |
| 布尔值 | | 单个换行 → |
| 布尔值 | | 抑制无效Markdown的错误 |