性能
            首先,FCKEDITOR的性能是非常好的,用户只需很少的时间就可以载入FCKEDITOR所需文件.对于其他在线编辑器来说,这几乎是个很难解决的难题,因为在开启编辑器时需要装载太多的文件.比如CUTEEDITOR,虽然功能比FCKEDITOR还要强大,可是,它本身也够庞大了,至于FREETEXTBOX等,其易用性与FCKEDITOR相比,尚有差距,可以说,FCKEDITOR是一个别具匠心的在线编辑器,它里面融入了作者高深的面向对象的JAVASCRIPT功力,集易用性与强大的功能与一体.
            
            .与编辑器相关的所有图像,脚本以及调用页
            .语言文件
            .编辑器的皮肤文件
            .工具样的贴图等
            这些将导致在服务器和客户端间产生相当的流量.如果有许多文件被调用,那么即便每个文件很小.也会让用户等得不耐烦.
            装载顺序
            从2.0版开始,编辑器按以下步骤装载资源:
            .基本页(就是编辑器所在页)以及装入编辑器的JS脚本
            .用来建立编辑器的脚本
            .编辑器的语言和皮肤.
            .建立编辑器.
            .载入预置的编辑文档内容.
            .从现在开始,用户可以阅读和编辑文档了,不过,拖拽支持以及工具栏都是不可用的
            .载入编辑器引擎脚本
            .建立工具栏,并且可用
            .从现在开始,编辑器的所有功能都已经完整
            .载入工具栏图标
            
            脚本压缩
            在打包任何新版本时,编辑器的JS脚本将会进行预处理.预处理步骤如下:
            .移除所有代码注释
            .移除所有无用的空白字符.
            .将脚本合并成几个文件
            使用上面的方法,我们可以将脚本文件的大小压缩到原来的50%.
            压缩后,原始的代码仍然存在于一个名为_Source的文件夹中
            
            如何打包?
            编辑器已经自带了打包程序,它位于FCKEDITOR的根文件夹中_PACKAGER文件夹中,名为Fckeditor.Packager.exe,将其复制到FCKEDITOR根文件夹中并运行,即可自动将JS脚本打包并压缩
            需要注意的是该程序是一个.NET程序,必须安装.NET FRAMEWORK才能使用
            
            想要获取支持?
            如果你捐赠15000欧元,你就可以获得1年的免费技术支持(比较贵的说,相当于人民币15万,不过西欧的费用相当惊人)
            
            如何安装?
            1.下载最新版的FCKEDITOR
            2.解压缩到你的站点根文件夹中名为FCKEDITOR的文件夹中(名称必须为FCKEDITOR,因为配置文件中已经使用此名称来标示出FCKEDITOR的位置)
            3.现在,编辑器就可以使用了,如果想要查看演示,可以按下面方法访问:
            http://<your-site>/FCKeditor/_samples/default.html
            注意:你可以将FCKEDITOR放置到任何文件夹,默认情况下,将其放入到FCKEDITOR文件夹是最为简单的方法.如果你放入的文件夹使用别的名称,请修改配置文件夹中编辑器BasePath参数,如下所示:
            oFckeditor.BasePath="/Components/fckeditor/";
            另外,FCKEDITOR文件夹中所有以下划线开头的文件夹及文件,都是可选的,可以安全的从你的发布中删除.它们并不是编辑器运行时必需的
            
            如何将FCKEDITOR整合进我的页面?
            由于目前的版本提供的FCKEDITOR仅提供了JAVASCRIPT式的整合,因此,这里仅讲述如何应用JAVASCRIPT来整合FCKEDITOR到站点中,当然,其他各种语言的整合,你可以参考_samples文件夹中的例子来完成
            1,假如编辑器已经安装在你的站点的/FCKEDITOR/文件夹下.那么,第一步我们需要做的就是在页面的HEAD段中放入SCRIPT标记以引入JAVASCRIPT整合模块.例如:
            <script type="text/javascript" src="/fckeditor/fckeditor.js"></script>
            其中路径是可更改的
            2,现在,FCKEDITOR类已经可以使用了.有两个方法在页面中建立一个FCKEDITOR编辑器:
            方法1:内联方式(建议使用):在页面的FORM标记内需要插入编辑器的地方置入以下代码: 
            script type="text/javascript">
            var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
            oFCKeditor.Create() ;
            </script>
            方法2:TEXTAREA标记替换法(不建议使用):在页面的ONLOAD事件中,添加以下代码以替换一个已经存在的TEXTAREA标记
            <html>
            <head>
            <script type="text/javascript">
            window.onload = function()
            {
            var oFCKeditor = new FCKeditor( 'MyTextarea' ) ;
            oFCKeditor.ReplaceTextarea() ;
            }
            </script>
            </head>
            <body>
            <textarea id="MyTextarea" name="MyTextarea">This is <b>the</b> initial value.</textarea>
            </body>
            </html>
            3.现在,编辑器可以使用了
            
            FCKEDITOR类参考:
            下面是用来在页面中建立编辑器的FCKEDITOR类的说明
            
            构造器:
            FCKeditor( instanceName[, width, height, toolbarSet, value] )
            instanceName:编辑器的唯一名称(相当于ID)
            WIDTH:宽度
            HEIGHT:高度
            toolbarSet:工具条集合的名称
            value:编辑器初始化内容 
            
            属性:
            instanceName:编辑器实例名
            width:宽度,默认值为100%
            height:高度,默认值是200
            ToolbarSet:工具集名称,参考FCKCONFIG.JS,默认值是Default
            value:初始化编辑器的HTML代码,默认值为空
            BasePath:编辑器的基路径,默认为/Fckeditor/文件夹,注意,尽量不要使用相对路径.最好能用相对于站点根路径的表示方法,要以/结尾
            CheckBrowser:是否在显示编辑器前检查浏览器兼容性,默认为true
            DisplayErrors:是否显示提示错误,默为true;
            
            集合:
            Config[Key]=value;
            这个集合用于更改配置中某一项的值,如
            oFckeditor.Config["DefaultLanguage"]="pt-br";
            
            方法:
            Create()
            建立并输出编辑器
            
            RepaceTextArea(TextAreaName)
            用编辑器来替换对应的文本框
            
            如何配置FCKEDITOR?
            FCKEDITOR提供了一套用于定制其外观,特性及行为的设置集.主配置文件名为Fckconfig.js
            你既可以编辑主配置文件,也可以自己定义单独的配置文件.配置文件使用JAVASCRIPT语法.
            
            修改后,在建立编辑器时,可以使用以下语法:
            var oFCKeditor = new FCKeditor( 'FCKeditor1' ) ;
            oFCKeditor.Config['CustomConfigurationsPath'] = '/myconfig.js' ;
            oFCKeditor.Create() ;
            
            提醒:当你修改配置后,请清空浏览器缓存以查看效果
            
            配置选项: 
            AutoDetectLanguage=true/false 自动检测语言
            BaseHref="" _fcksavedurl="""" 相对链接的基地址
            ContentLangDirection="ltr/rtl" 默认文字方向
            ContextMenu=字符串数组,右键菜单的内容
            CustomConfigurationsPath="" 自定义配置文件路径和名称
            Debug=true/false 是否开启调试功能,这样,当调用FCKDebug.Output()时,会在调试窗中输出内容
            DefaultLanguage="" 缺省语言
            EditorAreaCss="" 编辑区的样式表文件
            EnableSourceXHTML=true/false 为TRUE时,当由可视化界面切换到代码页时,把HTML处理成XHTML
            EnableXHTML=true/false 是否允许使用XHTML取代HTML
            FillEmptyBlocks=true/false 使用这个功能,可以将空的块级元素用空格来替代
            FontColors="" 设置显示颜色拾取器时文字颜色列表
            FontFormats="" 设置显示在文字格式列表中的命名
            FontNames="" 字体列表中的字体名
            FontSizes="" 字体大小中的字号列表
            ForcePasteAsPlainText=true/false 强制粘贴为纯文本
            ForceSimpleAmpersand=true/false 是否不把&符号转换为XML实体
            FormatIndentator="" 当在源码格式下缩进代码使用的字符
            FormatOutput=true/false 当输出内容时是否自动格式化代码
            FormatSource=true/false 在切换到代码视图时是否自动格式化代码
            FullPage=true/false 是否允许编辑整个HTML文件,还是仅允许编辑BODY间的内容
            GeckoUseSPAN=true/false 是否允许SPAN标记代替B,I,U标记
            IeSpellDownloadUrl=""下载拼写检查器的网址
            ImageBrowser=true/false 是否允许浏览服务器功能
            ImageBrowserURL="" 浏览服务器时运行的URL
            ImageBrowserWindowHeight="" 图像浏览器窗口高度
            ImageBrowserWindowWidth="" 图像浏览器窗口宽度
            LinkBrowser=true/false 是否允许在插入链接时浏览服务器
            LinkBrowserURL="" 插入链接时浏览服务器的URL
            LinkBrowserWindowHeight=""链接目标浏览器窗口高度
            LinkBrowserWindowWidth=""链接目标浏览器窗口宽度
            Plugins=object 注册插件
            PluginsPath="" 插件文件夹
            ShowBorders=true/false 合并边框
            SkinPath="" 皮肤文件夹位置
            SmileyColumns=12 图符窗列数
            SmileyImages=字符数组 图符窗中图片文件名数组
            SmileyPath="" 图符文件夹路径
            SmileyWindowHeight 图符窗口高度
            SmileyWindowWidth 图符窗口宽度
            SpellChecker="ieSpell/Spellerpages" 设置拼写检查器
            StartupFocus=true/false 开启时FOCUS到编辑器
            StylesXmlPath="" 设置定义CSS样式列表的XML文件的位置
            TabSpaces=4 TAB键产生的空格字符数
            ToolBarCanCollapse=true/false 是否允许展开/折叠工具栏
            ToolbarSets=object 允许使用TOOLBAR集合
            ToolbarStartExpanded=true/false 开启是TOOLBAR是否展开
            UseBROnCarriageReturn=true/false 当回车时是产生BR标记还是P或者DIV标记
            如何自定义样式列表呢?
            FCKEDITOR的样式工具栏中提供了预定义的样式,样式是通过XML文件定义的,默认的XML样式文件存在于FCkEditor根文件夹下的FckStyls.xml文件中
            这个XML文件的结构分析如下:
            <?xml version="1.0" encoding="utf-8" ?>
            <Styles >
            <Style name="My Image" element="img">
            <Attribute name="style" value="padding: 5px" />
            <Attribute name="border" value="2" />
            </Style >
            <Style name="Italic" element="em" />
            <Style name="Title" element="span">
            <Attribute name="class" value="Title" />
            </Style >
            <Style name="Title H3" element="h3" />
            </Styles>
            
            每一个STYLE标记定义一种样式,NAME是显示在下拉列表中的样式名,ELEMENT属性指定此样式所适用的对象,因为FCKEDITOR中的样式是上下文敏感的,也就是说,选择不同的对象,仅会显示针对这类对象定义的样式
            
            拼写检查
            FCKEDITOR带了两种拼写检查工具,一种是ieSpell,默认情况下使用这种,使用这种方式的拼写检查,要求客户下载并安装iespell这个小软件,另外,也提供SpellPager的方式来进行拼写检查,不过,由于SPELLPAGER是由PHP编写的服务器端脚本,因此,要求你的WEB服务器必须支持PHP脚本语言方可
            更改拼写检查器的方式请参见有关配置文件的详细说明
            
            压缩脚本
            为了提供脚本载入的效率,FCKEDITOR采用以下方法对脚本尽量压缩以减少脚本尺寸:
            1,移除掉脚本中的注释
            2.移除掉脚本中所有无意义的空白
            另外,FCKEDITOR还提供了一个专门用于压缩脚本的工具以便 你在发布时能减小文件尺寸,
            你可以将_Packager文件夹中的Fckeditor.Packager.exe复制到FCKEDITOR根文件夹来运行并压缩脚本
            
            本地化FCKEDITOR
            如果FCKEDITOR没有提供您所需要的语言(实际上全有了),你也可以自行制作新的语言
            ,你只需要复制出EN.JS,然后在其基础上进行翻译.另外,语言名称与对应的脚本文件名必须遵循RFC 3066标准,但是,需要小写,例如:Portuguess Language对应的脚本文件名必须为pt.js
            如果需要针对某个国家的某种语系,则可以在语系缩写后加上横线及国家缩写即可
            
            在使用时,系统会自动侦测客户端语系及国别而运用适当的界面语言.
            
            当建立一种新的语言后,你必须在"Edit/lang/fcklanguagemanager.js"中为其建立一个条目,如下所示:
            FCKLanguageManager.AvailableLanguages = 
            {
            
            en : 'English',
            pt : 'Portuguese' 
            } 
            
            需要提醒的是,文件必须保存为UTF-8格式
            
            如何与服务器端脚本进行交互?
            请查看例子以得到相关内容
            
            另外,在ASP.NET中以以下步骤使用
            1.把FCKEDITOR添中到工具箱
            2.托拽FCKEDITOR控件到页面
            3.为其指定名称
            4.FCKEDITOR类的所有属性不光可以在代码中使用,而且可以作为FCKEDITOR控件的属性直接使用,例如,要改变皮肤,可以在UI页面中指定SkinPath="/fckeditor/editor/skins/office2003"即可,其实FCKEDITOR的ASP.NET版本可以做得更好,你可以找到FCKEDITOR ASP.NET 2.1的源文件,然后修改该控件的设计,为其暴露更多有用的属性,重新编译即可
            5,POSTBACK后的数据,使用FCKEDITOR控件的value属性获得
            6.由于默认状态下,ASP.NET不允许提交含有HTML及JAVASCRIPT的内容,因此,你必须将使用FCKEDITOR的页面的ValidateRequest设为false.(<%@page validteRequest="false" %>即可)
             
                附:
            一、如何设置上传文件语言
            把FCKeditor根目录下面的fckconfig.js文件里
            
            var _FileBrowserLanguage     = 'asp' ;     // asp | aspx | cfm | lasso | perl | php | py
            var _QuickUploadLanguage     = 'asp' ;     // asp | aspx | cfm | lasso | php
            
            这两行中改成您所需要调用的编辑器语言,如用asp.net则改为aspx;
            二、解决中文的问题:
            在web.config中加入:
            <globalization requestEncoding="GB2312" responseEncoding="GB2312"/>
            这样设置后可以显示中文的文件,但URL地址也是中文的;
            如果服务器对中文地址的解析不好,可能导致图片无法浏览;
            所以修改:editor\filemanager\browser\default\frmresourceslist.html
            中的OpenFile函数,把
            window.top.opener.SetUrl( fileUrl ) ; 
            修改为:
            window.top.opener.SetUrl( escape(fileUrl) ) ;
            三.设置上传的目录:
            1:在web.config中设置:
            <appSettings>
                 <add key="FCKeditor:UserFilesPath" value="/fck/UpLoad/" />
            </appSettings>
            2:在Session中设置:
            在editor\filemanager\browser\default\connectors\aspx\connector.aspx中加入以下代码:
            <script runat="server" language="C#">
            protected override void OnInit(EventArgs e)
            {
               Session["FCKeditor:UserFilesPath"] = "/fck/UpLoad1/";
            }
            </script>
            如何在asp.net中动态设置上传图片的路径?
            1.在javascript中修改FCKConfig.ImageBrowserURL的值,修改方式如下:
            FCKConfig.ImageBrowserURL += "?Path=要上传的文件路径";
            如:要把文件上传到站点根目录的UploadFile文件夹中,则设置为:
            FCKConfig.ImageBrowserURL += "?Path=/UploadFile";
            2.在"editor\filemanager\browser\default\connectors\aspx\connector.aspx"文件最后中增加以下程序:
            <script runat="server" language="C#">
                protected override void OnInit(EventArgs e)
                {
            if( Request.QueryString["Path"]==null ){
               Session["FCKeditor:UserFilesPath"] = "/UpLoadFiles/"; //设置默认值
            }else{
               Session["FCKeditor:UserFilesPath"] = Request.QueryString["Path"];
            }
                }
            </script>
            FCKEditor在Asp.net环境下的配置安装
            不知道大家留意到没有了:
            
                - FreeTextbox 不开源了,虽然我还有它以前的开源版本。
- CSDN用的这个在线编辑器很优秀。
- 它的名字叫做FCKEditor
- 它是开源的
- 与平台无关,最起码能支持 Asp, Asp.net , PHP 
  以前我一直用FreeTextBox(主要是从Community Server那里知道的)。但是发现它并不是想象中好用,主要是上传图片没有弄好。好了好了,言归正传,说说我们今天的主角,FCKEditor,怎么在Asp.net中部署吧。
              首先,他的网站下载吧。这里要注意,你要下载两个ZIP文件,一个是Core,即核心文件,里面是整个FCKEditor的核心。第二个是For .net的组件。为了描述方便,我将真实文件名附上,以后要自己灵活修改啊。
              下载的核心文件叫FCKeditor_2.3.1.zip
              For .net 的文件叫FCKeditor.Net_2.2.zip
              部署步骤:
              解压FCKeditor_2.3.1.zip,将里面的FCKEditor复制到你的IIS主目录里面,其实要的效果是能够这样访问到就可以了 http://localhost/Fckeditor/ ,将http://localhost/Fckeditor/fckconfig.js的变量:
              _FileBrowserLanguage,_QuickUploadLanguage 的值改为 aspx,不难做吧。
              (可选)将复制好的FCKEditor里的以 '_' 开头的文件及文件夹删除,当然如果你是在开发也可以不删除,里面都是示例及调试页面。
              解压缩FCKeditor.Net_2.2.zip,然后在VS.net 2003中添加新的控件那样添加,bin\Release\FredCK.FCKeditorV2.dll 这个文件,呵呵,以后你就可以随便拖放这个控件了。
              (重要)将上面的DLL文件复制到 http://localhost/FCKeditor/editor/filemanager/upload/aspx/bin/
              然后在IIS设置中让 http://localhost/FCKeditor/editor/filemanager/upload/aspx/ 这个目录可以运行Aspx。同样,http://localhost/FCKeditor/editor/filemanager/browser/default/connectors/aspx/ 也要重复上面的过程。
              另外一种更加简单的方法是将FredCK.FCKeditorV2.dll 复制 http://localhost/FCKeditor/bin/ 目录下,然后在IIS中创建应用程序。
              这一步的目的是让:
              http://localhost/FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx
              http://localhost/FCKeditor/editor/filemanager/upload/aspx/upload.aspx
              这两个文件能够工作。
              好了,到此为止,你在aspx也里面拖入FCKEditor,将BasePath 设置为 /FCKEditor/就可以用了。
            如果:
              http://localhost/FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx 工作不正常
              你在浏览服务器时,就会有XML Request Error:XXXXXXXXXXXXXX(500)错误。
              http://localhost/FCKeditor/editor/filemanager/upload/aspx/upload.aspx
              你在上传图片时,按钮怎么按都没有反应的。