FCKeditor介绍

  FCKeditor是一个功能强大支持所见即所得功能的文本编辑器,可以为用户提供微软office软件一样的在线文档编辑服务。它不需要安装任何形式的客户端,兼容绝大多数主流浏览器,支持ASP.Net、ASP、ColdFusion 、PHP、Java、Active-FoxPro、Lasso、Perl、ython 等编程环境。

  官方网站http://www.fckeditor.net/

  官方文档http://wiki.fckeditor.net/

  下载地址http://www.fckeditor.net/download/default.html

其实不同版本的FCKeditor配置过程基本类似,这里拿最新的2.63作为实例进行介绍。

FCKeditor安装和配置

  到http://www.fckeditor.net下载FCKeditor2.63.zip和FCKeditor.NET2.63版的2个zip包

  (a) FCKeditor_2.6.3是其最新的Javascript文件和图片等;

  (b) FCKeditor.Net_2.6.3.zip是一个ASP.NET控件DLL文件。

  将a解压缩,得到FCKeditor的核心文件,将其拷贝到web项目的根目录下(建议,当然你可以任意放)。然后解压b,得到.NET支持的源码,进入,bin下的Release中存在FCKeditor的DLL(这里也有debug文件夹,建议使用release),我们需要在项目中添加对其引用即可。 

  1.工程浏览器上右键,选择添加引用(Add Reference…),找到浏览(Browse)标签,然后定位到你解压好的FredCK.FCKeditorV2.dll,确认就可以了。这时,FCKPro工程目录下就多了一个bin文件夹,里面包含FredCK.FCKeditorV2.dll文件。

  2.为了方便RAD开发,我们把FCKeditor控件也添加到VS的工具箱(Toolbox)上来,展开工具箱的常用标签组(General),右键选择组件(Choose Items…),在对话框上直接找到浏览按钮,定位FredCK.FCKeditorV2.dll,然后确认就可以了。

  3. 配置WebConfig,在<appSettings>节点添加,如下所示:

<appSettings>

<add key="FCKeditor:BasePath" value="/Web/fckeditor/"/>

<add key="FCKeditor:UserFilesPath" value="/Web/Upload/" />

</appSettings>

  说明:"/Web/"是项目名称。

  BasePath:fckeditor是FCKeditor整个文件夹所在的目录。

  UserFilesPath:上传文件、图片等存储的路径。

完成之后,再完成了下面的详细配置中的第一条,我们就可以使用FCKeditor控件了。为了更好的调试这个工具,使得其满足我们的实际需要,必须对其属性的设置进行修改。

FCKeditor详细的设置

  进入FCKeditor文件夹,编辑 fckconfig 文件。其实里面罗列的都比较清楚,编写比较规范,还有一些注释,但是只要略懂英文的就能够看得懂,操作起来也非常的方便。下面就简单介绍几种常用的设置作为一个小例子。

  1、此步骤是必须的,也是最重要的一步,必不可少的。

  原来:

  var _FileBrowserLanguage = 'php' ; // asp | aspx | cfm | lasso | perl | php | py

  var _QuickUploadLanguage = 'php' ; // asp | aspx | cfm | lasso | php

  改为:

  var _FileBrowserLanguage = 'aspx' ; // asp | aspx | cfm | lasso | perl | php | py

  var _QuickUploadLanguage = 'aspx' ; // asp | aspx | cfm | lasso | php

  2、配置语言包。有英文、繁体中文等,这里我们使用简体中文。

  原来:

  FCKConfig.DefaultLanguage = 'en' ;

  改为:

  FCKConfig.DefaultLanguage = 'zh-cn' ;

  3、配置皮肤。有default、office2003、silver风格等,

这里我们可以使用默认。

  FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;

  4、在编辑器域内可以使用Tab键。(1为是,0为否)

  FCKConfig.TabSpaces = 0 ; 改为FCKConfig.TabSpaces = 1 ;

  5、加上几种我们常用的字体的方法,例如:

  修改

  FCKConfig.FontNames = 'Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana' ;

  改为:

  FCKConfig.FontNames = '宋体;黑体;隶书;楷体_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana'

  6、编辑器域内默认的显示字体为12px,想要修改可以通过修改样式表来达到要求,打开/editor/css/fck_editorarea.css,修改font-size属性即可。如font-size: 14px;

  7、关于安全性。

  如果你的编辑器用在网站前台的话,那就不得不考虑安全了,在前台千万不要使用Default的toolbar,要么自定义一下功能,要么就用系统已经定义好的Basic,也就是基本的toolbar,

  FCKConfig.ToolbarSets["Basic"] = [

    ['Bold','Italic','-','OrderedList','UnorderedList','-','Link','Unlink','Image','-','About']

  ] ;

  其实这些,你都可以按自己的需求进行设置,功能的足够强大为了提供了更多的选择,肯定能够满足你的需求。

当然也可以配置一下WebConfig,也能让它确保安全,接下来我们将讲到。

FCKEditor 2.6的问题:

  1.FCKeditor出现"this connector is disabled Please check the"editor/filemanager/connectors/aspx/config.aspx"错误的解决办法

打开editor/filemanager/connectors/aspx/config.ascx修改CheckAuthentication()方法,返回true

private bool CheckAuthentication()

{

return true;

}

  2.在上传文件窗口点击浏览服务器,会出现the server didn't send back a proper xml.....错误提示,因为后期版本的FCKEditor要求不同类型的文件分别传到不同的目录,包括file,image,falsh,media等目录,一定要先建立起来。

FCKeditor精简

  进入FCKeditor文件夹,把所有“_”开头的文件和文件夹删掉,这些都是一些范例,只保留editor文件夹、fckconfig、fckeditor、fckstyles.xml、fcktemplates.xml就可以了;

  进入editor文件夹,删掉“_source”文件夹,里面放的同样是源文件;

  退回上一级目录进入filemanager文件夹,有browser和upload两个文件夹。进入browser"default"connectors,只保留aspx文件夹,其余的删掉;mcpuk目录亦可删除;upload也一样,只保留aspx文件夹;

  退到editor再进入images文件夹,smiley里面放的是表情图标,有msn和fun两个系列,如果你想用自己的表情图标,可以把它们都删除;如果你想用这里的表情图标那就不要删了;

  lang里面放的是语言包,如果只是用简体中文,那么只保留fcklanguagemanager、zh-cn两个文件就行了,

建议也保留en(英文)、zh(繁体中文)两个文件,fcklanguagemanager是语言配置文件,有了它才能和fckconfig里的设置成对,对应上相应的语言文件,一定要保留!

  再退出lang文件夹,进入skins文件夹,如果你想使用FCKeditor默认的奶黄色,那就把除了default文件夹外的另两个文件夹直接删除,如果想用别的,那就看你自己的喜好了。

-----------------------------------------------------------------------------------------

配置文件(fckconfig.js)中主要配置项目如下,根据自己看情况配置:

CODE:

 FCKConfig.CustomConfigurationsPath = '' ; // 自定义配置文件路径和名称

FCKConfig.EditorAreaCSS = FCKConfig.BasePath + 'css/fck_editorarea.css'; // 编辑区的样式表文件

FCKConfig.BaseHref = ''; // 相对链接的基地址

FCKConfig.Debug = true/false; // 是否开启调试功能,当调用FCKDebug.Output()时,会在调试窗中输出内容

FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/'; // 设置皮肤

FCKConfig.AutoDetectLanguage = true/false ; // 是否自动检测语言

FCKConfig.DefaultLanguage = 'zh-cn' ; // 设置默认语言

FCKConfig.ContentLangDirection = 'ltr/rtr'; // 默认文字方向,ltr左,rtr右

FCKConfig.FillEmptyBlocks = true/false ; // 使用这个功能,可以将空的块级元素用空格来替代

FCKConfig.FormatSource = true/false; // 切换到代码视图时,是否自动格式化代码

FCKConfig.FormatOutput = true/false; // 当输出内容时是否自动格式化代码

FCKConfig.FormatIndentator = ""; // 当在“源码格式”下缩进代码使用的字符

FCKConfig.GeckoUseSPAN = true/false; // 是否允许SPAN标记代替B,I,U标记

FCKConfig.StartupFocus = true/false; // 开启时是否FOCUS到编辑器

FCKConfig.ForcePasteAsPlainText = true/false;// 强制粘贴为纯文本

FCKConfig.ForceSimpleAmpersand = true/false; // 是否不把&符号转换为XML实体

FCKConfig.TabSpaces = 0/1; // TAB是否有效

FCKConfig.TabSpaces = 4; // TAB键产生的空格字符数

FCKConfig.ShowBorders = true/false; // 是否合并边框

FCKConfig.ToolbarStartExpanded = true/false; // 页面载入时,工具栏是否展开,点“展开工具栏”时才出现

FCKConfig.ToolBarCanCollapse = true/false; // 是否允许展开折叠工具栏

FCKConfig.ToolbarSets = object ; // 编辑器的工具栏,可以自行定义,删减,可参考已存在工具栏

FCKConfig.EnterMode = 'p'; // 编辑器中直接回车,在代码中生成,可选为p | div | br

FCKConfig.ShiftEnterMode = 'br'; // 编辑器中Shift+回车,在代码中生成,可选为p | div | br

FCKConfig.ContextMenu = 字符串数组; // 右键菜单的内容

FCKConfig.FontColors = ""; // 文字颜色列表

FCKConfig.FontNames = ""; // 字体列表

FCKConfig.FontSizes = ""; // 字号列表

FCKConfig.FontFormats = ""; // 文字格式列表

FCKConfig.StylesXmlPath = ""; // CSS样式列表的XML文件的位置

FCKConfig.TemplatesXmlPath = ""; // 模版的XML文件位置

FCKConfig.SpellChecker = "ieSpell/Spellerpages"; // 拼写检查器

FCKConfig.IeSpellDownloadUrl = ""; // 下载拼写检查器的网址

FCKConfig.SmileyPath = FCKConfig.BasePath + 'images/smiley/msn/'; // 表情文件存放路径

FCKConfig.SmileyImages = ''; // 表情文件名称列表,具体参考默认设置

FCKConfig.SmileyColumns = 8; // 表情窗口显示表情列数

FCKConfig.SmileyWindowWidth = 320; // 表情窗口显示宽度,此窗口会因为表情文件的改变而作调整

FCKConfig.SmileyWindowHeight = 240; // 表情窗口显示高度,此窗口会因为表情文件的改变而作调整

FCKConfig.FullPage = true/false; // 是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容

posted on 2010-05-07 11:17  itzsl  阅读(249)  评论(0编辑  收藏  举报