Tinymce 增加字体字号设置

本文介绍了如何在Tinymce编辑器中添加字体和字号的设置选项。通过更新toolbar.js文件并引入相关属性,实现了编辑器的功能增强。完成配置后,用户可在编辑器中自由选择字体大小和类型,提升编辑体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

toolbar字段增加 fontsizeselectfontselect
toolbar.js:

// toolbar.js文件存的是TinyMCE初始化时加载的工具栏控件, 设置的顺序即代表着在编辑器工具栏上出现的顺序
const toolbar = [
  'styleselect fontselect fontsizeselect formatselect searchreplace bold italic underline strikethrough alignleft aligncenter alignright outdent indent  blockquote undo redo removeformat subscript superscript',
  'hr bullist numlist link image charmap preview anchor pagebreak insertdatetime  table emoticons forecolor backcolor  code codesample fullscreen'
]

export default toolbar

然后,添加fontsize_formatsfont_formats属性:

fontsize_formats: "8pt 10pt 12pt 14pt 16pt 18pt 20pt 22pt 24pt 36pt",
        font_formats: "微软雅黑='微软雅黑';宋体='宋体';黑体='黑体';仿宋='仿宋';楷体='楷体';隶书='隶书';幼圆='幼圆';Andale Mono=andale mono,times;Arial=arial,helvetica,sans-serif;Arial Black=arial black,avant garde;Book Antiqua=book antiqua,palatino;Comic Sans MS=comic sans ms,sans-serif;Courier New=courier new,courier;Georgia=georgia,palatino;Helvetica=helvetica;Impact=impact,chicago;Symbol=symbol;Tahoma=tahoma,arial,helvetica,sans-serif;Terminal=terminal,monaco;Times New Roman=times new roman,times;Trebuchet MS=trebuchet ms,geneva;Verdana=verdana,geneva;Webdings=webdings;Wingdings=wingdings",
        

比较完整的信息:

    initTinymce () {
   
      /**由于TinyMCE允许通过CSS选择器来标识可替换的元素,所以只需要将包含选择器的对象传递给TinyMCE.init(),
       * 这样就将textarea替换为TinyMCE编辑器实例, 做完了最简单的初始化 */
      const _this = this
      window.tinymce.init({
   
        selector: `#${
     this.tinymceId}`,
        language: this.languageTypeList['zh'],
        branding: false,    // 隐藏tinymce右下角水印
        height: this.height,
        body_class: 
### 如何在 TinyMCE 编辑器中设置或修改字体样式 要在 TinyMCE设置或修改字体样式,可以通过配置 `font_formats` 和 `content_css` 来实现。以下是详细的说明: #### 配置字体格式 (`font_formats`) TinyMCE 提供了一个选项来定义可用的字体及其对应的 CSS 属性。这允许开发人员指定一组特定的字体族作为用户的可选项。 ```javascript tinymce.init({ selector: '#myTextarea', font_formats: 'Arial=arial,helvetica,sans-serif; Courier New=courier new,courier,monospace; Avenir=avenir,lato,sans-serif', // 定义字体格式[^1] }); ``` 上述代码片段展示了如何通过 `font_formats` 参数向编辑器添加自定义字体。每种字体由名称和其实际的 CSS 值组成,两者之间用等号分隔开。 #### 添加自定义字体到下拉菜单 如果希望让用户能够从编辑界面直接选择某些特殊的字体,则需要进一步扩展这些字体的选择范围,并将其集成至工具栏上的“Font Family”下拉框中。 ```javascript tinymce.init({ selector: '#myTextarea', toolbar: 'fontsize fontsizeselect | forecolor backcolor bold italic underline | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image code', fontsize_formats: "8pt 10pt 12pt 14pt 18pt 24pt 36pt", // 可选字号列表 content_style: "body {font-family:Avenir,Helvetica,Arial,sans-serif;} /* 默认全局字体 */", init_instance_callback: function(editor) { var fontFamilyDropdown = editor.settings.font_family || ''; // 手动追加额外字体支持 if (!fontFamilyDropdown.includes('Lato')) { fontFamilyDropdown += '; Lato=lato,sans-serif'; // 插入新字体[^2] } editor.settings.font_family = fontFamilyDropdown; }, }); ``` 此部分演示了动态注入一种名为 “Lato” 的 Google Web Font 到现有的字型清单里头去的过程。值得注意的是,在这里我们不仅限于静态声明方式;还可以利用 JavaScript 实现更加灵活的功能逻辑处理机制。 #### 使用外部CSS文件定制外观风格 除了内置的方式外,另一种方法就是借助外部链接形式引入专属的设计方案——即所谓的 Content CSS 文件路径参数设定法。 ```javascript tinymce.init({ selector: '#myEditor', plugins: ['advlist autolink lists link charmap preview anchor pagebreak searchreplace wordcount visualblocks code fullscreen insertdatetime media table contextmenu paste textcolor colorpicker'], menubar: false, height: 500, setup: function(ed){ ed.on('init',function(e){ setTimeout(function(){ $('.tox-tinymce').append('<style>.mystyle{background-color:#f7f7f7!important}</style>'); },1); }); }, content_css : ['/path/to/custom.css'],// 加载远程资源地址[^3] }); ``` 在这个例子当中,我们将一个指向服务器端存储位置下的 custom.css 文档传给了初始化函数里的 `content_css` 键名之下。如此一来便能确保所有被创建出来的 HTML 元素都会自动应用该文档内的规则集描述信息上去啦! --- ###
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值