admin 管理员组

文章数量: 1184232


2024年3月19日发(作者:我的世界源码下载)

第33卷第6期 

2 0 1 3年6 j 

湖北科技学院学报 

Journal of Hubei University of Science and T 

Vo1.33,No.6 

Jun.20l3 

文章编号:2095—4654(2013)06—0021—03 

以KindEditor为例 

汪 蓉 

(湖北科技学院计算机科学与技术学院,湖北成宁437100) 

摘要:随着Java web程序应用开发的发展,出现了多种HTML在线文本编辑器(FCKeditor,xheditor,tmyMCE, 

CuteEditor,KindEditor,eWebEditor,UEditor),在网站的设计与制作过程中应用支持多种语言的在线文本编辑器可 

简化用户操作,使网站或系统更具有亲和性,尤其是在网站内容管理系统(Content Management System,英文缩写 

是CMS)中,使用功能齐全的文本编辑器更能突显网站的实用性和可操作性.熟练应用一种HTML在线文本编辑 

器已逐渐成为开发者必备的技能之一. 

关键词:Java web;KindEditor;HTML在线文本编辑器 

中图分类号:TP312 文献标识码:A 

科技的发展,信息时代的到来,网络将成为当代社会人 

们沟通的主要途径,同样也是信息交换的主要来源,在日常 

置简单化、免费开源、文本编辑功能齐全、支持多浏览器、支 

持PHP、javaseript、asp.net、java等不同编程语言的强大优 

势,受到众多开发者的青睐.目前,众多的Java web项目多 

生活中每天都有大量的信息通过互联网进行编辑和传递. 

同时,网络技术也在不断进行自我完善以适应社会发展的 

需要. 

以FCKeditor为在线编辑器的首选,但FCKeditor在线编辑 

器不能实现已经编辑完成的图文混排的word文档自动上 

传,如果要实现这一过程则需要手动进行上传,这就增加了 

编辑者的操作步骤,降低了网站的亲和力,尤其是在CMS 

为了使界面更加简洁美观经常需要使用在线编辑方式 

对文章、新闻、讨论贴、通告、记事等信息进行文字编辑处 

理.在线文本编辑器是一种常用的应用程序,它可以在网页 

上实现许多桌面编辑软件(如Word)等所具有的强大可视 

编辑功能.在线编辑器有方便快捷的特点,使用所见即所得 

中,若在同一篇文档中有大量图片,则网站管理员工作会十 

分繁琐.eWebEditor可实现word文档中图片自动上传功 

能,但购买ewebeditor,对于中小型企业网站开发者也是一 

笔不小的花费.因此选择一款开源的在线编辑器也逐渐成 

为开发者值得思考的问题.而kindeditor与Xpmer.WordPas— 

的编辑方式能快捷、方便地编辑出效果一流的图文效果,适 

应了现代社会快节奏的发展需要,如果使用纯手工编写代 

码的方法编辑则需要浪费大量时间及精力.其主要特点如 

下:通过编辑器编辑的文字、图片等,在显示时都会按照编 

ter插件整合即可实现图文混排word文档自动上传,因此 

Kindeditor是一个很好的选择. 

排的样式显示,同时使用者可以很方便地对内容进行修改 

和排版;编辑器可以实现编辑内容自动转换为HTML代码: 

在网页上编辑的文字、图片等内容都会在后台自动转换为 

1 KindEditor在Java文本开发中的配置 

1.1开发环境和KindEditor的配置: 

(1)开发环境:Myeclipse8.0,JDK1.6,tomcat6.0; 

可被浏览器识别的HTML标记语言,并且允许使用者在代 

码状态下对代码标记进行修改.不仅如此,在线文本编辑器 

(2)KindEditor配置文件:commons—fdeupload一1.2. 

1.jar,commons—io一1.4.jar,json_simple一1.1.jar 

还可以对媒体文件进行编辑,使文本编辑器更容易被人接 

受和采用. 

1.2 KindEditor在Javaweb开发中的应用: 

目前国内在线文本编辑器有很多版本,开源的在线编 

辑器也是千差万别的,其中大部分都支持web开发语言,如 

ASP、PHP、.NET等语言.然而,随着jsp技术的Et益成熟, 

(1)在需要使用KindEditor的web项目下建立kinded. 

itor文件夹用来放置在线编辑器组件的相关文件(如图1) 

(2)下载KindEditor组件,选取相应需要的文件复制粘 

贴到KindEditor文件夹下,若选取jsp则需要将jsp文件夹 

下的lib文件夹下的三个jat"包导入到项目web—INF文件 

夹中; 

部分在线文本编辑器已经不能满足开发者的需求,部分 

收费在线文本编辑器功能也越来越完善,然而在小型开发 

过程中购买在线编辑器花费的代价过大,但是开源在线编 

辑器又不能满足开发需求.在众多的在线编辑器中以开源 

编辑器FCKeditor最为出名,FCKeditor由于资源轻量化、配 

(3)将所需要的架包导入之后即可在项目中调用 

KindEditor. 

}收稿日期:2013—03一Ol 

22 湖北科技学院学报 第33卷 

。铬klndedltor 

≯ jsp 

≯链 lang 

》ptugins 

》盛》skins 静WebRoot 

themes e aRached 

蜘ki ̄dedltor-alt m;n ̄s 》静klnded;tor 

枷 ̄ndedfforId 5 国,META-INF 

伽kindeditot-mln ̄s 》国》p_c 

咖kJndeditor.js )国video 

p妤META—tNF 》 WEBt|NF 

图1 图2 

2 KindEditor在java web中的配置 

(1)在需要使用KindEditor的页面首部<head>与</ 

head>之间导入所需要的.CSS和.jS文件,并创建一个 

KindEditor编辑器,返回一个KindEditor编辑器对象;在项 

目webroot文件夹下建立attached文件夹用来保存上传文 

件(如图2); 

<link ret=”stylesheet”href=”kindeditor/themes/de— 

fault/default.CSS”/> 

<link rel=”stylesheet”href=”kindeditor/plugins/ 

code/prettify.CSS”/> 

<script charset=”utf一8”src=”kindeditor/kindeditor. 

js”></script> 

<script charset=”uff一8”src=”kindeditor/lang/zh

CN.js”></scirpt> 

<script charset=”uff一8”src=”kindeditor/plugins/ 

code/prettify.js”></script> 

<script> 

KindEditor.ready(function(K){ 

var editor!:K.create("textareal nalne=”contentl” 

{ 

cssPath:kindeditor/plugins/code/prettify.css 

uploadJson:kindeditor/jsp/upload json.jsp. 

ifleManagerJson:kindeditor/jsp/file_manager json.jsp. 

allowFileManager:true; 

</script> 

(2)在需要显示KindEditor编辑器的位置添加textarea 

输入框:<textarea id=”editor—id”name=”contentl”cols 

”100”rows=”8”style=”width:700px;height:200px;visi— 

bility:hidden:”></textarea> 

在需要显示KindEditor编辑器的页面中id必须是唯一 

的值;在使用kindeditor编辑时若需要从服务器端程序 

(ASP、PHP、ASP.NET等)直接显示内容,则必须转换HT— 

ML特殊字符(>,<,&,”);若不需要则可在textarea里设 

置HTML内容即可实现编辑;由于不同浏览器遵循的规则 

不一致,若不对编辑器的宽度和高度设置处置,可能导致显 

示有问题,故在使用编辑器时可以用inline样式宽度和高 

度设置初值. 

3 KindEditor编辑器实现编辑文件上传下载具体参数配置 

(核心代码如下) 

修改kindeditor文件夹下的jsp文件夹下的file—manag- 

er_json.jsp文件: 

//根目录路径,可以指定绝对路径,比如/var/www/at 

tached/ 

String orotPath pageContext.getServletContext().get— 

RealPatl1(”/”)+”aaached/”: 

//根目录URL,可以指定绝对路径,比如http://www. 

youmite.corn/attached/ 

String rootUd=request.getContextPath()+”/atta— 

ched/”; 

//图片扩展名 

String[]fileTypes=new String[]{tt gif”,”jpg”,” 

jpeg”,”png”,”bmp”}; 

String dirName=request.getParameter(”dir”); 

修改kindeditor文件夹下的jsp文件夹下的upload— 

json.jsp文件: 

//文件保存目录路径 

Strnig savePath pageContext.getServletContext().get~ 

RealPatll(”/”)+”attached/”: 

//文件保存目录URL 

String saveUd=request.getContextPath()+”/atta— 

ched/”; 

//定义允许上传的文件扩展名 

HashMap<String.String>extMap new HashMap< 

String,String>(); 

extMap.put(”image”,” ,JPg,jpeg,prig,bmp”); 

extMap.put(”flash”,”swf,lfy”); 

extMap.put(”media”,”swf,flv,mp3,way,wma,wmv, 

mid,avi,mpg,asf,iTll,rmvb”); 

extMap.put(”file”,”doc,docx,xls,xlsx,ppt,htm,html, 

txt,zip,mr,gz,bz2”); 

//最大文件大小 

long maxSize=1000000; 

//检查目录 

File uploadDir=new File(savePath); 

//检查目录写权限 

if(!uploadDir.canWrite()){ 

out.prinfln(getErorr(”上传目录没有写权限.”)); 

return; 

} 

4添加自定义插件 

在web程序开发中我们有时需要实现自己想要的功能 

但是编辑器有未提供相应的功能时我们需要自己定义插件 

来实现自己想要的功能.如需要在编辑器打开时显示hel— 

lo.则可按如下方法自定义插件: 

添加plugins/hello/hello.js文件. 

KindEditor.plugin(hello.function(K){ 

var editor=this,nalTle=hello.//点击图标时执行 

editor.clickToolbar(name,function(){ 

editor.insertHtml(你好’; 

}); 

}); 

定义语言,在页面的<scirpt>标签里添加以下脚本. 

第6期 汪蓉HTML在线文本编辑器在Java web开发中的使用分析一以KindEditor为例 23 

KindEditor.1ang({ 

更改uploadJson(指定上传文件的服务器端程序)和 

fdeMana'gerJson(指定浏览远程图片的服务器端程序)的路 hello:你好 

}); 

定义工具栏图标的CSS,在页面的<style>标签里添加 

径,在测试时需要修改WordPaste.jS文件中的配置信息,修 

改粘贴管理器中”CabPah”,”ItcoPath”,”PostUrl”的值,修改 

以下CSS. 

ke—icon—hello{ 

background—image:ur1(../skins/default/default.gif); 

background—position:0px一672px; 

width:16px; 

height:16px; 

} 

最后调用编辑器时items数组里添加hello. 

K.create(静id { 

items:[hello'] 

}); 

5实现word文档粘贴 

在CMS中,管理员要经常更新网站内容,而有些内容 

可能是已经在word文档中排版,且文档中可能是图文混排 

的文档,采用kindeditor与Xproer.WordPaster插件整合即可 

实现图文混排word文档自动上传.按4所示步骤建立 

WordPaster.js并在kindeditor要显示的items中添加”word— 

paste.imagepaster”;WordPaster从剪切板,本地硬盘,第三 

方软件或Word文档中复制图片,然后点击编辑器工具栏中 

的”粘贴图片”按钮,图片将自动上传到Web服务器中.下 

载Xproer.WordPaster压缩文件夹,解压后将WordPaster文 

件夹导入WebRoot文件夹下,导入WordPaster所需的.jS 

和.CSS文件. 

<scirpt type=”text/javascript”src="WordPaster/js/ 

jquery.min.js charset=”utf一8”></scirpt> 

<scirpt type:”text/javascript”S/X3="WordPaster/js/ 

jquery—ui一1.8.11.custom.min.js ></script> 

<script tpye=”text/javascript”SIC="WordPaster/js/ 

WodrPaster.js charset=”utf一8”></scirpt> 

为WordPaste在测试服务器的地址. 

6结语 

开源的HTML在线编辑器KindEditor是众多编辑器的 

种,使用编辑器可以让用户在网站上获得所见即所得编 

辑效果,KindEditor可以帮助开发人员将传统的多行文本 

输入框(textarea)替换为可视化的富文本输入框.KindEditor 

的使用方法也较为简单,不需要繁琐的配置,对开发者来说 

也较容易上手使用.KindEditor的开发是采用JavaScript编 

写,可以无缝地与PHP、ASP、Java、.NET等程序集成,比较 

适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应 

用上使用. 

KindEditor可以实现文本粘贴,图片上传,插入音视屏 

等功能,利用kindeditor提供的强大的编辑功能,能让用户 

方便的对编辑的内容进行修改和排版,也可以对上传的图 

片、音视频等进行相应的管理,使得页面看上去更加整洁美 

观,同时也简化了后台管理人员的操作流程,对于后台用户 

来说,他们的要求就是最简单的操作便可以轻松地对网站 

进行管理,对于前台用户来说,一个排版整齐的网页或是信 

息则更具有吸引力. 

参考文献: 

[1]刘颖.FCK在web开发中的应用[J].电脑开发与应用, 

2009,(2). 

[2]于梅英,姜波,张珂,Java Web的HTML在线文本编辑 

器解决方案一以Fckeditor在线编辑为例[J].软件导 

刊,2011,10(2). 

[3]钱立,吴瑕.利用FCKeditor在JAVA/JAVAEE中实现在 

线编辑[J].知识经济,2010,(2). 


本文标签: 编辑器 编辑 需要 图片