Log In
Home
Support
Demos
Documentation
Blogs
Training
Webinars
[Expand]Welcome to DevExpress .NET Documentation
[Expand]WinForms Controls
[Collapse]ASP.NET Controls and MVC Extensions
 [Expand]Prerequisites
 [Expand]What's Installed
 [Expand]Common Concepts
 [Collapse]ASP.NET WebForms Controls
   Getting Started
  [Expand]Reporting
  [Expand]Chart Control
  [Expand]Grid View
  [Expand]Card View
  [Expand]Vertical Grid
  [Expand]Spreadsheet
  [Collapse]Rich Text Editor
   [Expand]Product Information
    Getting Started
   [Collapse]Concepts
     ASPxRichEdit Control
    [Collapse]Document
     [Expand]Document Model
      Document Layout
     Supported Document Formats
     Import and Export
     Formatting Characters
     Formatting Paragraphs
    [Expand]Fields
     Mail Merge
     Restrictions
     Spell Checking
    [Expand]Client API
    [Expand]Built-in Dialogs
     Adaptivity
     HTML Tag Interpretation
     Keyboard Shortcuts
   [Expand]Examples
  [Expand]Image and Data Browsing
  [Expand]Docking and Popups
  [Expand]Site Navigation and Layout
  [Expand]File Management
  [Expand]Multi-Use Site Controls
  [Expand]Scheduler
  [Expand]HTML Editor
  [Expand]Pivot Grid
  [Expand]Tree List
  [Expand]Gauges
  [Expand]Data Editors
  [Expand]Spell Checker
  [Expand]Query Builder
 [Expand]ASP.NET MVC Extensions
 [Expand]Localization
 [Expand]Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Document Server
[Expand]Reporting
[Expand]Report Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation

Document

Expanded Overview

The DevExpress Rich Text Editor (RichEdit) is implemented based on the flow document concept that enables a document to "reflow content" depending on the environment variables (such as window size, device resolution) and optional user preferences. For this reason, the RichEdit defines two types of structures for a document.

  • Document Model
    The logical structure which reflects a document's logical hierarchical organization. To modify the Document Model's structure, use the provided public client-side API.

  • Document Layout
    The physical structure which represents the appearance of physical entities (such as text, picture, table) in a document. It is a hierarchical description of a document layout. The Document Layout structure cannot be modified programmatically via the public API.

Expanded Document Processing

In general, RichEdit processes a document in the following order:

  1. When RichEdit opens a document of the supported format, the Document Model is built first for the document.
    Note that the RichEdit's Document Model has its own unique structure and it differs from models of any known document format (such as RTF or DOC).

  2. RichEdit's Layout Engine converts the Document Model into the Document Layout.
    Note that there is no one to one correspondence between physical and logical entities.

  3. RichEdit visualizes the Document Layout by rendering the HTML code in a web page to display the document.

Expanded Structural Elements

The structural elements of a document are described in more detail in the following articles.

Note

The ASPxRichEdit control internally uses a comprehensive API (a set of interfaces, methods, events and commands) implemented by the RichEdit Core Library. This API is not publicly exposed at the ASPxRichEdit control level.
However, if you want to get familiarized with the RichEdit's document internal implementation, you can refer to the Document Server's Fundamentals - Document topic which lists the most important entities of the RichEdit API.

Is this topic helpful?​​​​​​​