asp.net文字編輯器(FCKeditor)

iDotNetSpace發表於2010-04-15

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>
        
<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資料夾外的另兩個資料夾直接刪除,如果想用別的,那就看你自己的喜好了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-659817/,如需轉載,請註明出處,否則將追究法律責任。

相關文章