FontFamilyConfig (font)
@ckeditor/ckeditor5-font/src/fontfamily
The configuration of the font family feature.
This option is used by the FontFamilyEditing feature.
ClassicEditor
.create( {
fontFamily: ... // Font family feature configuration.
} )
.then( ... )
.catch( ... );
See all editor options.
Filtering
Properties
-
options : Array.<(String | FontFamilyOption)>module:font/fontfamily~FontFamilyConfig#optionsAvailable font family options defined as an array of strings. The default value is:
const fontFamilyConfig = { options: [ 'default', 'Arial, Helvetica, sans-serif', 'Courier New, Courier, monospace', 'Georgia, serif', 'Lucida Sans Unicode, Lucida Grande, sans-serif', 'Tahoma, Geneva, sans-serif', 'Times New Roman, Times, serif', 'Trebuchet MS, Helvetica, sans-serif', 'Verdana, Geneva, sans-serif' ] };which configures 8 font family options. Each option consists of one or more comma–separated font family names. The first font name is used as the dropdown item description in the UI.
Note: The family names that consist of spaces should not have quotes (as opposed to the CSS standard). The necessary quotes will be added automatically in the view. For example, the
"Lucida Sans Unicode"will render as follows:<span style="font-family:'Lucida Sans Unicode', 'Lucida Grande', sans-serif">...</span>The "default" option removes the
fontFamilyattribute from the selection. In such case, the text will be rendered in the view using the default font family defined in the styles of the web page.Font family can be applied using the command API. To do that, use the
fontFamilycommand and pass the desired family as avalue. For example, the following code will apply thefontFamilyattribute with the'Arial'valueto the current selection:editor.execute( 'fontFamily', { value: 'Arial' } );Executing the
'fontFamily'command without any value will remove thefontFamilyattribute from the current selection. -
supportAllValues : Booleanmodule:font/fontfamily~FontFamilyConfig#supportAllValuesBy default the plugin removes any
font-familyvalue that does not match the plugin's configuration. It means that if you paste content with font families that the editor does not understand, thefont-familyattribute will be removed and the content will be displayed with the default font.You can preserve pasted font family values by switching the
supportAllValuesoption totrue:const fontFamilyConfig = { supportAllValues: true };With this configuration font families not specified in the editor configuration will not be removed when pasting the content.
Every day, we work hard to keep our documentation complete. Have you spotted outdated information? Is something missing? Please report it via our issue tracker.