服務(wù)熱線
153 8323 9821
FCKeditor是一個(gè)功能強(qiáng)大支持所見(jiàn)即所得功能的文本編輯器,可以為用戶提供微軟office軟件一樣的在線文檔編輯服務(wù)。它不需要安裝任何形式的客戶端,兼容絕大多數(shù)主流瀏覽器,支持ASP.Net、ASP、ColdFusion 、PHP、Java、Active-FoxPro、Lasso、Perl、ython 等編程環(huán)境。
官方網(wǎng)站http://www.fckeditor.net/
官方文檔http://wiki.fckeditor.net/
下載地址http://www.fckeditor.net/download/default.html
其實(shí)不同版本的FCKeditor配置過(guò)程基本類似,這里拿最新的2.6.4作為實(shí)例進(jìn)行介紹。
到http://www.fckeditor.net,下載FCKeditor2.6.4.zip和FCKeditor.NET2.6.3版的2個(gè)zip包
(a) FCKeditor_2.6.4是其最新的Javas
(b) FCKeditor.Net_2.6.3.zip是一個(gè)ASP.NET控件DLL文件。
將a解壓縮,得到FCKeditor的核心文件,將其拷貝到web項(xiàng)目的根目錄下(建議,當(dāng)然你可以任意放)。然后解壓b,得到.NET支持的源碼,進(jìn)入,bin下的Release中存在FCKeditor的DLL(這里也有debug文件夾,建議使用release),我們需要在項(xiàng)目中添加對(duì)其引用即可。
1.工程瀏覽器上右鍵,選擇添加引用(Add Reference…),找到瀏覽(Browse)標(biāo)簽,然后定位到你解壓好的FredCK.FCKeditorV2.dll,確認(rèn)就可以了。這時(shí),F(xiàn)CKPro工程目錄下就多了一個(gè)bin文件夾,里面包含F(xiàn)redCK.FCKeditorV2.dll文件。
2. 在頁(yè)面中使用FCKeditor
有兩種方式:
(1)手工編碼
在頁(yè)面中加入ASP.NET指令:
<%@ Register Namespace="FredCK.FCKeditorV2" Assembly="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %>
然后在需要的地方加入FCKeditor控件:
<FCKeditorV2:FCKeditor id="FCKeditor1" runat="server" />
(2)集成到Visual Studio工具箱
打開(kāi)一ASP.NET頁(yè)面,展開(kāi)Toolbox,打開(kāi)右鍵菜單,選擇“Choose Items ...”,在出現(xiàn)的“Choose Toolbox Items”會(huì)話框的“.NET Framework Components”選項(xiàng)卡中選擇“Browse”,找到并選中FCKeditor程序集,打開(kāi)后回到“Choose Toolbox Items”窗口,點(diǎn)擊“OK”,完成控件導(dǎo)入。
這時(shí),在Toolbox的General分類下出現(xiàn)了一個(gè)名為FCKeditor的控件,可以像使用Visual Studio內(nèi)置控件一樣使用它。
3. 配置FCKeditor編輯器路徑和文件上傳路徑
在頁(yè)面中,使用的是FCKeditor控件,該控件需要知道FCKeditor編輯器文件組的路徑。有兩種配置方法。
(1)配置Web.Config,在<appSettings>節(jié)點(diǎn)添加,如下所示:
說(shuō)明:
BasePath:fckeditor是FCKeditor整個(gè)文件夾所在的目錄。
UserFilesPath:上傳文件、圖片等存儲(chǔ)的路徑。
使用這種配置方法后,對(duì)于項(xiàng)目中任何一個(gè)頁(yè)面中用到的FCKeditor控件,都不用再配置其BasePath和UserFilesPath屬性。
(2)直接對(duì)用到的FCKeditor控件進(jìn)行配置
在頁(yè)面代碼中設(shè)置FCKeditor的屬性BasePath為FCKeditor編輯器文件組的路徑,UserFilesPath為FCKeditor編輯器文件上傳路徑,或者在Page_Init事件處理器中設(shè)置其BasePath和UserFilesPath的值。
這樣,就完成了FCKeditor向ASP.NET頁(yè)面的集成工作。 完成之后,再完成了下面的詳細(xì)配置中的第一條,我們就可以使用FCKeditor控件了。為了更好的調(diào)試這個(gè)工具,使得其滿足我們的實(shí)際需要,必須對(duì)其屬性的設(shè)置進(jìn)行修改。
進(jìn)入FCKeditor文件夾,編輯 fckconfig 文件。其實(shí)里面羅列的都比較清楚,編寫(xiě)比較規(guī)范,還有一些注釋,但是只要略懂英文的就能夠看得懂,操作起來(lái)也非常的方便。下面就簡(jiǎn)單介紹幾種常用的設(shè)置作為一個(gè)小例子。
1、此步驟是必須的,也是最重要的一步,必不可少的。
原來(lái):
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、配置語(yǔ)言包。有英文、繁體中文等,這里我們使用簡(jiǎn)體中文。
原來(lái):
FCKConfig.DefaultLanguage = 'en' ;
改為:
FCKConfig.DefaultLanguage = 'zh-cn' ;
3、配置皮膚。有default、office2003、silver風(fēng)格等,這里我們可以使用默認(rèn)。
FCKConfig.SkinPath = FCKConfig.BasePath + 'skins/default/' ;
4、在編輯器域內(nèi)可以使用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 = '宋體;黑體;隸書(shū);楷體_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana'
6、編輯器域內(nèi)默認(rèn)的顯示字體為12px,想要修改可以通過(guò)修改樣式表來(lái)達(dá)到要求,打開(kāi)/editor/css/fck_editorarea.css,修改font-size屬性即可。如font-size: 14px;
7、 啟用文件上傳
FCKeditor提供了非常強(qiáng)大和易用的文件上傳功能,但是默認(rèn)配置里,文件上傳功能不可用,這是基于安全的考慮。但我認(rèn)為訪問(wèn)安全性控制應(yīng)該由程序來(lái)做,不應(yīng)由控件來(lái)做。
在文件config.ascx(~/fckeditor/editor/filemanager/connectors/aspx/config.ascx)中,修改CheckAuthentication()的返回值為true。如果希望上傳具有多擴(kuò)展名的文件,修改 SetConfig()中ForceSingleExtension的值為false。FCKeditor默認(rèn)可以上傳文件、圖片、Flash和多媒體四種類型的文件,可以在SetConfig()中對(duì)AllowedTypes修改來(lái)增減允許的類型(這個(gè)類型可以在后面的 TypeConfig["TypeName"]中定義,比如在AllowedExtensions屬性中定制本類型允許的上傳文件擴(kuò)展名,在 DeniedExtensions里定制不允許的上傳文件擴(kuò)展名)。
在文件fckconfig.js中,修改配置行"FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Connector=' + encodeURIComponent( FCKConfig.BasePath + 'filemanager/connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ) ;"為FCKConfig.LinkBrowserURL = FCKConfig.BasePath + 'filemanager/browser/default/browser.html?Type=File&Connector=' + encodeURIComponent( FCKConfig.BasePath + 'filemanager/connectors/' + _FileBrowserLanguage + '/connector.' + _FileBrowserExtension ) ;";修改配置