What is @ckeditor/ckeditor5-heading?
@ckeditor/ckeditor5-heading is a plugin for CKEditor 5 that provides heading functionality. It allows users to format text as headings of various levels, which is essential for structuring content in a meaningful way.
What are @ckeditor/ckeditor5-heading's main functionalities?
Basic Heading
This code initializes a CKEditor instance with the Heading plugin enabled. The toolbar includes a heading button that allows users to apply different heading levels to their text.
ClassicEditor.create(document.querySelector('#editor'), { plugins: [ Heading ], toolbar: [ 'heading' ] })
Custom Heading Options
This code initializes a CKEditor instance with custom heading options. Users can choose from Paragraph, Heading 1, and Heading 2, each with its own styling.
ClassicEditor.create(document.querySelector('#editor'), { plugins: [ Heading ], toolbar: [ 'heading' ], heading: { options: [ { model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' }, { model: 'heading1', view: 'h1', title: 'Heading 1', class: 'ck-heading_heading1' }, { model: 'heading2', view: 'h2', title: 'Heading 2', class: 'ck-heading_heading2' } ] } })
Advanced Heading Configuration
This code demonstrates an advanced configuration where additional heading levels (e.g., Heading 3) are added to the editor. This allows for more granular content structuring.
ClassicEditor.create(document.querySelector('#editor'), { plugins: [ Heading ], toolbar: [ 'heading' ], heading: { options: [ { model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' }, { model: 'heading1', view: 'h1', title: 'Heading 1', class: 'ck-heading_heading1' }, { model: 'heading2', view: 'h2', title: 'Heading 2', class: 'ck-heading_heading2' }, { model: 'heading3', view: 'h3', title: 'Heading 3', class: 'ck-heading_heading3' } ] } })
Other packages similar to @ckeditor/ckeditor5-heading
quill
Quill is a modern WYSIWYG editor built for compatibility and extensibility. It provides similar heading functionalities through its built-in formats and can be customized with modules. Compared to @ckeditor/ckeditor5-heading, Quill offers a more lightweight and flexible approach but may require more configuration for advanced use cases.
tinymce
TinyMCE is a popular rich text editor that offers comprehensive heading options out of the box. It is highly customizable and supports a wide range of plugins. Compared to @ckeditor/ckeditor5-heading, TinyMCE provides a more extensive set of features but can be more complex to integrate and configure.
draft-js
Draft.js is a JavaScript rich text editor framework maintained by Facebook. It allows for extensive customization and control over content editing, including heading functionalities. Unlike @ckeditor/ckeditor5-heading, Draft.js is more of a framework than a ready-to-use editor, requiring more development effort to achieve similar results.