詳解FCKeditor文本編輯器在.NET環境下的設置和使用

功能簡介:

它可以讓web程序擁有如MS Word這樣強大的編輯功能,目前最新版本爲FCKeditor 2.4.2 。


下載地址:http://sourceforge.net/project/showfiles.php?group_id=75348

(要下載FCKeditor2.4.2.zip和FCKeditor.NET版的2個zip包)

FCKeditor2.4.2.zip是其最新的Javascript文件和圖片等;

FCKeditor.NET.zip是一個ASP.NET控件DLL文件。


下面結合一個ASP.NET2.0的項目來具體看看FCKeditor的安裝、配置、使用。在開始之前請先下載FCKeditor文件包和FCKeditor.Net 服務器控件。啓用VWD2005新建一個C#的WEB Site工程,取名FCKPro。

FCKeditor安裝:

所謂安裝就是一個簡單的拷貝過程。

把下載的FCKeditor2.4.2.zip文件包直接解壓縮到FCKPro的根目錄下,這樣根目錄下就得到一個FCKeditor文件夾,裏面富含所有FCKeditor的核心文件。

然後把下載的FCKeditor.Net.zip隨便解壓縮到你硬盤的一個空目錄,裏面是FCKeditor.Net的源代碼,你可以對它進行再度開發,本文尚不涉及本內容,我們只是直接使用其目錄下的/bin/Debug目錄中的FredCK.FCKeditorV2.dll文件。

在VS2005中添加對FredCK.FCKeditorV2.dll的引用:

1.在FCKPro工程瀏覽器上右鍵,選擇添加引用(Add Reference…),找到瀏覽(Browse)標籤,然後定位到你解壓好的FredCK.FCKeditorV2.dll,確認就可以了。這時,FCKPro工程目錄下就多了一個bin文件夾,裏面包含FredCK.FCKeditorV2.dll文件。當然,你也可以完全人工方式的來做,把FredCK.FCKeditorV2.dll直接拷貝到FCKPro/bin/下面,VS2005在編譯時會自動把它編譯進去的。

2.爲了方便RAD開發,我們把FCKeditor控件也添加到VS的工具箱(Toolbox)上來,展開工具箱的常用標籤組(General),右鍵選擇組件(Choose Items…),在對話框上直接找到瀏覽按鈕,定位FredCK.FCKeditorV2.dll,然後確認就可以了。這時工具箱呈現
這樣會省去很多在開發時使用FCKeditor控件時要添加的聲明代碼。

至此,你已經完成了FCKeditor的安裝,並可以在你的項目中使用FCKeditor了,當然後面還有很多需要配置的東西。


FCKeditor詳細的設置:

進入FCKeditor文件夾,編輯 fckconfig.js 文件。

1、 此步驟是必須的,也是最重要的一步。

修改

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

var _QuickUploadLanguage = 'asp' ; // 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','-','About']

FCKConfig.ToolbarSets["Basic"] = [

['Bold','Italic','-','OrderedList','UnorderedList','-',/*'Link',*/'Unlink','-','Style','FontSize','TextColor','BGColor','-','Smiley','SpecialChar','Replace','Preview']

] ;

這是我改過的Basic,把圖像功能去掉,把添加鏈接功能去掉,因爲圖像和鏈接和flash和圖像按鈕添加功能都能讓前臺頁直接訪問和上傳文件,要是這兒不改直接給你上傳個木馬還不馬上玩完?

當然也可以配置一下WebConfig,也能讓它確保安全,接下來我們將講到。

FCKPro工程項目的設置:

1、配置WebConfig,在<appSettings>節點添加,如下所示:

<appSettings>

     <add key="FCKeditor:BasePath" value="/項目名稱/fckeditor/"/>

     <add key="FCKeditor:UserFilesPath" value="/項目名稱/Files/" />

</appSettings>

說明:BasePath是fckeditor所在路徑,fckeditor由於我們直接放網站目錄下這樣寫就可以,如果您的網站多放幾層適當調整即可。UserFilesPath是所有上傳的文件的所在目錄。我們新建了一個Files文件夾放在了項目中做爲上傳文件的所在目錄,這裏爲了方便,但由於考慮到安全性,我們建議Files要單獨做wwwroot目錄下的一個站點比較好,和我們的站點FCKEditor平行。不要把它放FCKEditor裏,爲什麼呢?因爲Files是要讓客戶有寫的權限的,如果放FCKEditor下很危險。Files目錄要有寫的權限。你根據自己網站需求設置那個帳號,本文爲方便設置User實際中你可能用ASP.NET帳號更合理。

2、在FCKpro工程項目中編寫一個最簡單的頁面

<%@ Page Language="C#"   AutoEventWireup="true"    CodeFile="Default.aspx.cs"   Inherits="_Default" validateRequest="false" %>


<%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %>

// 這裏要主要兩個參數

// 默認爲<%@ Page Language="C#"   AutoEventWireup="true"    CodeFile="Default.aspx.cs"   Inherits="_Default" %>

// 我們要添加一個參數 validateRequest=false,否則提交帶html代碼的內容會報錯

// 從客戶端(...)中檢測到有潛在危險的 Request.Form 值。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml" >

<head runat="server">

     <title>無標題頁</title>

</head>

<body>

     <form id="form1" runat="server">

     <div>

         <FCKeditorV2:FCKeditor ID="FCKeditor1" runat="server">

         </FCKeditorV2:FCKeditor>

         &nbsp;</div>

     </form>

</body>

</html>

如何獲取其內容呢?讀取FCKeditor1控件的Value屬性值即可。


結束語:現在的文本編輯器很多,FCKeditor算是一個比較難用的東東,還有個類似的控件FreeTextBox也很好用,不過它的最新版似乎收費了。

FCKeditor精簡版的製作方法(附)。

 進入FCKeditor文件夾,把所有“_”開頭的文件和文件夾刪掉,這些都是一些範例,只保留editor文件夾、fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;

  進入editor文件夾,刪掉“_source”文件夾,裏面放的同樣是源文件;

  退回上一級目錄進入filemanager文件夾,有browser和upload兩個文件夾。進入browser/default/connectors,只保留aspx文件夾,其餘的刪掉;mcpuk目錄亦可刪除;upload也一樣,只保留aspx文件夾;

  退到editor再進入images文件夾,smiley裏面放的是表情圖標,有msn和fun兩個系列,如果你想用自己的表情圖標,可以把它們都刪除;如果你想用這裏的表情圖標那就不要刪了;

  lang裏面放的是語言包,如果只是用簡體中文,那麼只保留fcklanguagemanager.js、zh-cn.js兩個文件就行了,建議也保留en.js(英文)、zh.js(繁體中文)兩個文件,fcklanguagemanager.js是語言配置文件,有了它才能和fckconfig.js裏的設置成對,對應上相應的語言文件,一定要保留!

  再退出lang文件夾,進入skins文件夾,如果你想使用FCKeditor默認的奶黃色,那就把除了default文件夾外的另兩個文件夾直接刪除,如果想用別的,那就看你自己的喜好了。

至此,文件精簡完畢,由原來的2.55M變成現在的797K了。接着修改設置。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章