如何对富文本编辑器(FCK Html Editor)的工具栏进行扩展?
我们在项目开发过程中,会经常使用到富文本编辑器。GeneXus内置的富文本编辑器FCK Html Editor使用起来非常方便,只要将页面变量的控件类型(Control Type)选择为FCK Html Editor即可。
如下图所示:
运行效果如下:
GeneXus的富文本编辑器集成的是CKEditor 4,而CKEditor是非常强大且可以扩展很多功能的,那么在GeneXus中如何对富文本编辑器进行功能扩展呢?
我们以一个实例来说明吧。现在默认的富文本编辑器是没有设置行高的这个功能的,我们在CKEditor是可以搜索到Line Height(https://ckeditor.com/cke4/addon/lineheight)这个插件的,接下来我们看一下如何将它加入到GeneXus的富文本编辑器中。
1. 下载Line Height插件,然后复制到代码目录下CKEditor控件的plugins文件夹中。
例如,我选择的Java环境进行测试,如下图所示。
2. 新建一个js文件,例如myconfig.js,里面添加代码:
CKEDITOR.config.extraPlugins = 'lineheight';
将文件放在CKeditor控件目录下,如下图所示:
3. 在FCK Html Editor控件的Custom Configuration属性关联刚刚建立的js文件。
4. 然后运行就可以啦,运行效果如下。可以看到我们页面上的富文本编辑器的工具栏中就多了一个行间距的设置功能。
除此之外呢,我再补充说明几点:
1) 我们是可以一次添加很多插件的,只需要在myconfig.js文件中加入对应的配置代码就可以了,CKEditor有很多的扩展功能,大家可以根据自己的需要进行下载使用;
2) 在实际使用过程中,我会把myconfig.js文件放在GeneXus的文件中,这样此js文件就会自动复制到指定的目录,就不用担心将来忘记了。如下图:
3) 上面例子中的LineHeight插件,我下载下来后,默认显示是英语的,我看了一下源代码,加入了中文,供大家参考。
●在LineHeight对应的plugin.js文件中,加入中文标识
●在语言包中,加入需要翻译的中文(参考它自带的其他语言文件格式,修改一下即可)
此篇文章参考的Wiki链接:
如何对富文本编辑器(FCK Html Editor)的工具栏进行扩展?的更多相关文章
- 【前端】wangEditor(富文本编辑器) 简易使用示例
转载请说明作者或者注明出处,谢谢 说到前端常用的编辑器,自然也少不了富文本编辑器(RichText Editor) 笔者在此之前也看了一些相关的在线编辑器,其中包括了当百度搜索“富文本编辑器”字样时出 ...
- 【重点突破】—— React实现富文本编辑器
前言:富文本编辑器Rich Text Editor, 简称 RTE, 是一种可内嵌于浏览器,所见即所得的文本编辑器. 一.安装插件 react-draft-wysiwyg: 文本编辑器插件 dra ...
- [译] 通过 contentEditable 属性创建一个所见即所得的编辑器(富文本编辑器)
译者注 这只是一篇入门教程,介绍了一些基础知识,仅供参考,切不可因此觉得富文本编辑器很简单. 创建富文本编辑器是一个非常复杂的工程,需要考虑到方方面面,也有很多坑(请参考原文第一条评论). 为免误导大 ...
- 原生JS实现简单富文本编辑器2
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 原生JS实现简单富文本编辑器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JavaScript Iframe富文本编辑器中的光标定位
最近在项目中碰到一个比较棘手的问题: 在iframe富文本编辑器中,有个工具栏,这个工具栏在iframe标签之外,工具栏上有一个按钮,点击该按钮向iframe正在编辑中的光标处插入一个图片,图片会插入 ...
- uniapp - 富文本编辑器editor(仅支持App和微信小程序)
uniapp - editor富文本编辑器用法示例 丢几个图,用心看下去(-.-) 这里使用了https://ext.dcloud.net.cn/plugin?id=412 插件,用于选择字体颜色.其 ...
- 关于百度Editor富文本编辑器 自定义上传位置
因为要在网站上编辑富文本数据,所以直接采用百度的富文本编辑器,但是这个编辑器有个缺点,默认情况下,文件只能上传到网站的根目录,不能自定义路径. 而且json配置文件只能和controller.jsp在 ...
- 在线富文本编辑器FckEditor配置(.Net Framework 3.5)
进入FCKeditor文件夹,编辑 fckconfig.js 文件.1.上传设置 . var _FileBrowserLanguage = 'php' ; // a ...
随机推荐
- 【整理】explain、type、extra用法和结果的含义
EXPLAIN列详情 详细解读:https://www.cnblogs.com/yycc/p/7338894.html explain显示了mysql如何使用索引来处理select语句以及连接表.可以 ...
- extjs6需要引入文件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Redis 安装碰到问题
一 make 报错 1. 出现如下错误 : cd src && make all make[1]: Entering directory '/xx/xx/redis-x.x.x/src ...
- 【BZOJ】1415 [Noi2005]聪聪和可可 期望DP+记忆化搜索
[题意]给定无向图,聪聪和可可各自位于一点,可可每单位时间随机向周围走一步或停留,聪聪每单位时间追两步(先走),问追到可可的期望时间.n<=1000. [算法]期望DP+记忆化搜索 [题解]首先 ...
- NYOJ 228 士兵杀敌(五) (模拟)
{题目链接](http://acm.nyist.net/JudgeOnline/problem.php?pid=228) 描述 南将军麾下有百万精兵,现已知共有M个士兵,编号为0~M,每次有任务的时候 ...
- 导航狗IT周报-2018年05月27日
原文链接:https://www.daohanggou.cn/2018/05/27/it-weekly-9/ 摘要: “灰袍技能圈子”将闭圈:物理安全:为什么我们现在的生活节奏越来越快? 技术干货 1 ...
- python并发编程之threading线程(一)
进程是系统进行资源分配最小单元,线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.进程在执行过程中拥有独立的内存单元,而多个线程共享内存等资源. 系列文章 py ...
- 【读书笔记::深入理解linux内核】内存寻址
我对linux高端内存的错误理解都是从这篇文章得来的,这篇文章里讲的 物理地址 = 逻辑地址 – 0xC0000000:这是内核地址空间的地址转换关系. 这句话瞬间让我惊呆了,根据我的CPU的知识,开 ...
- caffe Python API 之BatchNormal
net.bn = caffe.layers.BatchNorm( net.conv1, batch_norm_param=dict( moving_average_fraction=0.90, #滑动 ...
- Linux 基础——权限管理命令chown、chgrp
一.chown命令与chgrp命令的作用 有时你需要改变文件或目录的属主,比如有人离职或开发人员创建了一个在测试或生产环境中需要归属在系统账户下的应用.Linux提供了两个命令来实现这个功能:chow ...