canvas-editor is a browser-based rich text editor that renders content using HTML5 Canvas and SVG instead of traditional DOM-based approaches. It is designed to provide a WYSIWYG editing experience similar to word processors, enabling precise control over layout, rendering, and document structure. canvas-editor supports a wide range of formatting and document features, including text styling, tables, images, and embedded elements, all managed through a structured data model. Its architecture is modular, allowing developers to extend functionality through plugins, custom commands, and event hooks. It includes support for page-based layouts with headers, footers, pagination, and print-ready output, including PDF generation. It also provides interactive components such as form controls and context menus, making it suitable for building complex document editing systems.
Features
- Rich text formatting including font styles, alignment, lists, and undo/redo
- Support for inserting elements like tables, images, links, and formulas
- Canvas-based rendering with optional SVG and PDF output capabilities
- Page layout tools such as headers, footers, margins, and pagination
- Interactive controls including inputs, checkboxes, radio buttons, and date pickers
- Extensible plugin system with custom commands, menus, and shortcuts