最近在写一个和论坛类似的系统,需要用到文本的编辑器,于是锁定了fck
去网站找了几个版本,觉得还是用最新的最好于是下载的是2.6.6版本的
具体的下载地址是在这里:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
好的,找到了之后发现其实J2EE工程的使用只需要其中一部分的是于是参考网上的说明便开始
删除一些不用的文件,以 _ 开头的统统杀掉,里面还有例子,也一起杀掉,J2EE的工程用到的
是php上传
由于网站上的例子是不可上传文件的所以,自己设置一下文件吧,这些有些是网上找的,有些是自己总结的
1.
/editor/filemanager/connectors/php目录下的config.php文件
将 $Config['Enabled'] 属性置为TRUE
将 $Config['UserFilesPath'] 属性置为 '/userfiles/' ;
2.
找到目录下的fckconfig.js
将FCKConfig.AutoDetectLanguage设置为 false ;
将FCKConfig.DefaultLanguage设置为默认的 'zh_cn'
var _FileBrowserLanguage 设置为 'php'
var _QuickUploadLanguage 设置为 'php'
并在web.xml中配置fck的servlet如下
<servlet>
<servlet-name>Connector</servlet-name>
<servlet-class>
net.fckeditor.connector.ConnectorServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Connector</servlet-name>
<url-pattern>
/fckeditor/editor/filemanager/connectors/*
</url-pattern>
</servlet-mapping>
这样就可以上传图片文件了,但是你会发现上传中文名的图片,会无法显示,
就是这个问题困扰了我1天,网上也是五花八门
最后找到只要修改tomcat/conf/server.xml文件
<Connector port="8088" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="UTF-8"
/>
<Connector port="8009" protocol="AJP/1.3"
redirectPort="8443"
URIEncoding="utf-8"
/>
也就是在这两个标记最后加上URIEncoding="utf-8"即可创建中文文件夹和上传中文名图片
------------自定义工具栏------------
配置目录下的fckconfig.js文件
它里面有默认的两个工具栏选项一个是Default,一个是Basic
下面来一个我自己写的工具栏
//我的自定义工具栏
FCKConfig.ToolbarSets["Leasr"] = [
['Source','DocProps','-','Save','NewPage','Preview','-'],
['Cut','Copy','Paste','PasteText','PasteWord','-'],
['Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'],
['TextColor','BGColor'],
['FitWindow','ShowBlocks','-','About'],
'/',
['Bold','Italic','Underline','StrikeThrough','-','Subscript','Superscript'],
['OrderedList','UnorderedList','-','Outdent','Indent','Blockquote','CreateDiv'],
['JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['Link','Unlink','Anchor'],
['Image','Table','Rule','Smiley','SpecialChar','PageBreak'],
'/',
['Style','FontFormat','FontName','FontSize']
] ;
还可以在该文件中预设字体:
FCKConfig.FontNames = '宋体;微软雅黑;幼圆;楷体;华康少女文字W5(P);Arial;Courier New;Times New Roman' ;
这里我就添加了几种字体
------------使用fck的标签调用fckeditor------------
1.将lib文件下的所有jar包,拷贝至web-inf的lib下
2.<%@ taglib uri="http://java.fckeditor.net" prefix="FCK" %>
加入taglib标记
3.调用形如:
<form action="showpostdata.jsp" method="post" >
<input type="text" name="title"/>
<FCK:editor instanceName="myfck" height="500" toolbarSet="Leasr">
</FCK:editor>
<input type="submit" value=" 提交 " />
</form>
instanceName="myfck" 便是后台获取文本域内容的参数
toolbarSet="Leasr" 便是我们刚才设置的自定义工具栏的名称
在src目录下放一个配置文件:fckeditor.properties
connector.userFilesPath=/userfiles
connector.userActionImpl=net.fckeditor.requestcycle.impl.UserActionImpl
如果想要编辑传回的内容需要如下写法
<FCK:editor instanceName="EditorDefault">
<jsp:attribute name="value">
传回的待编辑的内容
</jsp:attribute>
</FCK:editor>
稍后会放出我自己精简过后的fckeditor和结合其使用的j2ee的简单的论坛系统