標籤:
FCKeditor是一個功能強大支援所見即所得 (WYSIWYG)功能的文字編輯器,可以為使用者提供微軟office軟體一樣的線上文檔編輯服務。
它不需要安裝任何形式的用戶端,相容絕大多數主流瀏覽器,支援ASP.Net、ASP、ColdFusion 、PHP、Jsp、Active-FoxPro、Lasso、Perl、ython 等編程環境。
官方網站 http://www.fckeditor.net/
官方文檔 http://wiki.fckeditor.net/
http://www.fckeditor.net/download/default.html
FCKeditor安裝和配置
下載FCKeditor2.63.zip和FCKeditor.NET2.63版的2個zip包
(a) FCKeditor_2.6.3是html檔案、Javascript檔案和圖片等資源檔
(b) FCKeditor.Net_2.6.3.zip是一個ASP.NET控制項DLL檔案
Asp.Net項目中添加對 FCKeditor 的引用
1. 項目上選擇添加引用找到FredCK.FCKeditorV2.dll或直接將FredCK.FCKeditorV2.dll複製到項目的Bin目錄中
2. 為了方便開發,可以把FredCK.FCKeditorV2.dll控制項也添加到VS的工具箱中
3. 配置Web.Config,在<appSettings>節點添加,如下所示:
<appSettings>
<!--FCKeditor文本編輯控制項配置-->
<add key="FCKeditor.BasePath" value="~/FCKeditor/"/>
<add key="FCKeditor.UserFilesPath" value="/解決方案名/uploads"/> //UserFilesPath的文路徑可以在FCKeditor/editor/filemanager/connectors/aspx/config.ascx中更改
</appSettings>
4.網頁中使用
<%@ Register Assembly="FredCK.FCKeditorV2" Namespace="FredCK.FCKeditorV2" TagPrefix="FCKeditorV2" %>
<body>
<FCKeditorV2:FCKeditor ID="FCKeditor" runat="server" BasePath="~/FCKeditor/">//BasePath指定到FCKeditor的根目錄 </FCKeditorV2:FCKeditor>
</body>
FCKeditor 的配置:
進入FCKeditor檔案夾,編輯 fckconfig.js 檔案
1、修改(改成自己當前使用的語言)
var _FileBrowserLanguage= ‘aspx‘ ;// asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage= ‘aspx‘ ;// asp | aspx | cfm | lasso | perl | php | py
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 = ‘宋體;黑體;隸書;楷體_GB2312;Arial;Comic Sans MS;Courier New;Tahoma;Times New Roman;Verdana’;
6、編輯器域內預設的顯示字型為12px,想要修改可以通過修改樣式表來達到要求,開啟/editor/css/fck_editorarea.css,修改font-size屬性即可
7、關於安全性
如果你的編輯器用在前台非認證的情況下,推薦使用Basic的toolbar
FCKConfig.ToolbarSets["Basic"] = [
[‘Bold‘,‘Italic‘,‘-‘,‘OrderedList‘,‘UnorderedList‘,‘-‘,‘Link‘,‘Unlink‘,‘Image‘,‘-‘,‘About‘]
] ;
8、在上傳檔案視窗點擊瀏覽伺服器,可能會出現 the server didn’t send back a proper xml….. 錯誤提示,是因為FCKeditor要求不同類型的檔案分別傳到不同的目錄,包括file,image,falsh,media 等目錄,可以先建立起來試試。
FCKEditor.NET 2.6 的安全性配置
檔案上傳,出錯:(This connector is disabled.please check the "editor/filemanager/connectors/aspx/config.ascx" file.)
開啟 editor/filemanager/connectors/aspx/config.ascx 檔案,返回true.
private bool CheckAuthentication()
{
// WARNING : DO NOT simply return "true". By doing so, you are allowing
// "anyone" to upload and list the files in your server. You must implement
// some kind of session validation here. Even something very simple as...
//
//return ( Session[ "IsAuthorized" ] != null && (bool)Session[ "IsAuthorized" ] == true );
//
// ... where Session[ "IsAuthorized" ] is set to "true" as soon as the
// user logs in your system.
return true;
}
FCKeditor的精簡和清理
進入FCKeditor檔案夾,將所有以“_”開頭的檔案和檔案夾刪,刪除FCKeditor檔案夾下尾碼名為:.afp、.cfc、.cfm、.lasso、.pl、.py、.txt檔案,只保留FCKeditor檔案夾下fckconfig.js、fckeditor.js、fckstyles.xml、fcktemplates.xml就可以了;
進入editor檔案夾,刪掉“_source”檔案夾,裡面放的同樣是源檔案;
lang裡面放的是語言套件,如果只是用簡體中文,那麼只保留fcklanguagemanager.js、zh-cn.js兩個檔案就OK,建議保留en.js(英文)、zh.js(繁體中文)兩個檔案,fcklanguagemanager.js是語言設定檔,有了它才能和 fckconfig.js裡的設定成對,對應上相應的語言檔案,一定要保留!
簡單介紹一下設定檔fckconfig.js中文注釋。如有理解錯誤的地方請高手留言指正。
FCKConfig.CustomConfigurationsPath = ‘‘ ; //自訂設定檔路徑和名稱
FCKConfig.EditorAreaCSS = FCKConfig.BasePath + ‘css/fck_editorarea.css‘ ; //文本編輯地區的樣式表檔案路徑
FCKConfig.EditorAreaStyles = ‘‘ ; //文本編輯地區的樣式表風格
FCKConfig.ToolbarComboPreviewCSS = ‘‘ ; //工具列預覽CSS
FCKConfig.DocType = ‘‘ ; //文件類型
FCKConfig.BaseHref = ‘‘ ; //相對連結的基地址
FCKConfig.FullPage = false ; //是否允許編輯整個HTML檔案,還是僅允許編輯BODY間的內容
FCKConfig.StartupShowBlocks = false ; //是否啟用"顯示模組"
FCKConfig.Debug = false ; //是否開啟調試視窗功能
FCKConfig.AllowQueryStringDebug = true ; //是否啟用網頁查詢調試功能
FCKConfig.SkinPath = FCKConfig.BasePath + ‘skins/default/‘ ; //FCKeditor皮膚路徑
FCKConfig.SkinEditorCSS = ‘‘ ; //編輯器的皮膚CSS路徑
FCKConfig.SkinDialogCSS = ‘‘ ; //交談視窗的皮膚CSS路徑
FCKConfig.PreloadImages = [ FCKConfig.SkinPath + ‘images/toolbar.start.gif‘, FCKConfig.SkinPath + ‘images/toolbar.buttonarrow.gif‘ ] ;
//預裝入的圖片
FCKConfig.PluginsPath = FCKConfig.BasePath + ‘plugins/‘ ; //外掛程式路徑
FCKConfig.AutoGrowMax = 400 ; //文本編輯地區允許自動成長的最大高度限制,設定此屬性時應同時將
// FCKConfig.Plugins.Add( ‘autogrow‘ ) ;屬性的注釋去除,配合使用
FCKConfig.AutoDetectLanguage = true ; //是否自動檢測語言
FCKConfig.DefaultLanguage = ‘en‘ ; //預設語言
FCKConfig.ContentLangDirection = ‘ltr‘ ; //預設的文字方向,可選"ltr/rtl",即從左至右或從右至左
FCKConfig.ProcessHTMLEntities = true ; //處理HTML實體
FCKConfig.IncludeLatinEntities = true ; //包括拉丁文
FCKConfig.IncludeGreekEntities = true ; //包括希臘文
FCKConfig.ProcessNumericEntities = false ; //處理數字實體
FCKConfig.AdditionalNumericEntities = ‘‘ ; //附加的數字實體
FCKConfig.FillEmptyBlocks = true ; //是否填充空塊
FCKConfig.FormatSource = true ; //在切換到程式碼檢視時是否自動格式化代碼
FCKConfig.FormatOutput = true ; //當輸出內容時是否自動格式化代碼
FCKConfig.FormatIndentator = ‘ ‘ ; //當在源碼格式下縮排代碼使用的字元
FCKConfig.EMailProtection = ‘none‘ ; //偵測電子郵件連結
FCKConfig.EMailProtectionFunction = ‘mt(NAME,DOMAIN,SUBJECT,BODY)‘ ; //偵測電子郵件連結
FCKConfig.StartupFocus = false ; //開啟時焦點是否到編輯器,即開啟頁面時游標是否停留在fckeditor上
FCKConfig.ForcePasteAsPlainText = false ; //是否強制粘貼為純文字內容
FCKConfig.AutoDetectPasteFromWord = true ; //是否自動探測從word粘貼檔案,僅支援IE
FCKConfig.ShowDropDialog = true ; //是否顯示下拉式功能表
FCKConfig.ForceSimpleAmpersand = false ; //是否不把&符號轉換為XML實體
FCKConfig.TabSpaces = 0 ; //按下Tab鍵時游標跳格數,預設值為零為不跳格
FCKConfig.ShowBorders = true ; //是否合并邊框
FCKConfig.SourcePopup = false ; //是否彈出
FCKConfig.ToolbarStartExpanded = true ; //啟動FCKeditor工具列預設是否展開
FCKConfig.ToolbarCanCollapse = true ; //是否允許摺疊或展開工具列
FCKConfig.IgnoreEmptyParagraphValue = true ; //是否忽略空的段落值
FCKConfig.FloatingPanelsZIndex = 10000 ; //浮動面板索引
FCKConfig.HtmlEncodeOutput = false ; //是否將HTML編碼輸出
FCKConfig.TemplateReplaceAll = true ; //是否替換所有模板
FCKConfig.TemplateReplaceCheckbox = true ; //是否將實際內容顯示在模版視窗中
FCKConfig.ToolbarLocation = ‘In‘ ; //工具列位置
FCKConfig.ToolbarSets["Default"] //配置預設工具列中各按鈕,適合用於後台編輯
FCKConfig.ToolbarSets["Basic"] //配置基本工具列按扭,適合前台編輯
FCKConfig.EnterMode = ‘p‘ ; //編輯文本時按斷行符號鍵自動產生<P></P>標籤
FCKConfig.ShiftEnterMode = ‘br‘ ; ////編輯文本時按Shift+斷行符號鍵自動產生<br />標籤
FCKConfig.Keystrokes //自訂鍵盤快速鍵
FCKConfig.ContextMenu //定義右鍵菜單的內容
FCKConfig.BrowserContextMenuOnCtrl = false ; //是否允許在編輯地區中當按下Ctrl鍵時,點擊滑鼠右鍵顯示瀏覽器的操作功能表
FCKConfig.BrowserContextMenu = false ; //是否允許在編輯地區中點擊滑鼠右鍵顯示瀏覽器的操作功能表
FCKConfig.EnableMoreFontColors = true ; //是否禁止更多顏色選項
FCKConfig.FontColors //文字顏色列表
FCKConfig.FontFormats //文字格式列表
FCKConfig.FontNames //字型列表
FCKConfig.FontSizes //字型大小列表
FCKConfig.StylesXmlPath = FCKConfig.EditorPath + ‘fckstyles.xml‘ ; //CSS樣式列表的XML檔案的位置
FCKConfig.TemplatesXmlPath = FCKConfig.EditorPath + ‘fcktemplates.xml‘ ; //模版的XML檔案位置
FCKConfig.SpellChecker = ‘WSC‘ ; //拼字檢查器
FCKConfig.IeSpellDownloadUrl = ‘http://www.iespell.com/download.php‘ ; //下載拼字檢查器的網址
FCKConfig.SpellerPagesServerScript = ‘server-scripts/spellchecker.php‘ ; //拼字檢查器指令碼路徑
FCKConfig.FirefoxSpellChecker = false ; //Firefox瀏覽器拼字檢查
FCKConfig.MaxUndoLevels = 15 ; //最大可以撤銷的次數
FCKConfig.DisableObjectResizing = false ; //是否禁止使用者調整映像和表格的大小
FCKConfig.DisableFFTableHandles = true ; //是否禁用表格工具
FCKConfig.LinkDlgHideTarget = false ; //是否隱藏Link視窗的target標籤
FCKConfig.LinkDlgHideAdvanced = false ; //是否隱藏Link視窗的advanced標籤
FCKConfig.ImageDlgHideLink = false ; //是否隱藏image視窗的link標籤
FCKConfig.ImageDlgHideAdvanced = false ; //是否隱藏image視窗的advanced標籤
FCKConfig.FlashDlgHideAdvanced = false ; //是否隱藏Flash視窗的advanced標籤
FCKConfig.ProtectedTags = ‘‘ ; //添加HTML套用格式
FCKConfig.BodyId = ‘‘ ; //設定編輯器的id
FCKConfig.BodyClass = ‘‘ ; //設定編輯器的class
FCKConfig.DefaultStyleLabel = ‘‘ ; //設定文字編輯器的風格,預設為空白文檔
FCKConfig.DefaultFontFormatLabel = ‘‘ ; //設定預設格式
FCKConfig.DefaultFontLabel = ‘‘ ; //設定預設字型
FCKConfig.DefaultFontSizeLabel = ‘‘ ; //設定預設字型大小
FCKConfig.DefaultLinkTarget = ‘‘ ; //設定預設連結目標為(_blank、_self _parent、_top)
FCKConfig.CleanWordKeepsStructure = false ; //是否設定直接粘貼為Word格式
FCKConfig.RemoveFormatTags //刪除文字時是否刪除相應的格式
FCKConfig.RemoveAttributes //刪除文字時是否刪除相應的樣式
FCKConfig.CustomStyles //樣式菜單
FCKConfig.CoreStyles //設定FCKeditor核心樣式
FCKConfig.IndentLength = 40 ; //編輯器中縮排量的長度
FCKConfig.IndentUnit = ‘px‘ ; //編輯器中縮排量的單位
FCKConfig.IndentClasses = [] ; //FCKeditor允許使用CSS縮排
FCKConfig.JustifyClasses = [] ; //FCKeditor允許使用CSS類文本
var _FileBrowserLanguage = ‘php‘ ; //檔案瀏覽器使用的語言
var _QuickUploadLanguage = ‘php‘ ; //快速上傳使用的語言
var _FileBrowserExtension = _FileBrowserLanguage == ‘perl‘ ? ‘cgi‘ : _FileBrowserLanguage ; //檔案瀏覽器延伸
var _QuickUploadExtension = _QuickUploadLanguage == ‘perl‘ ? ‘cgi‘ : _QuickUploadLanguage ; //快速上傳擴充
FCKConfig.LinkBrowser = true ; //是否允許在插入連結時瀏覽伺服器
FCKConfig.LinkBrowserURL //插入連結時瀏覽伺服器的URL
FCKConfig.LinkBrowserWindowWidth //連結目標瀏覽器視窗寬度
FCKConfig.LinkBrowserWindowHeight //連結目標瀏覽器視窗高度
FCKConfig.ImageBrowser = true ; //是否關閉圖片檔案瀏覽伺服器的功能
FCKConfig.ImageBrowserURL //圖片檔案瀏覽伺服器的URL
FCKConfig.ImageBrowserWindowWidth //映像瀏覽器視窗寬度
FCKConfig.ImageBrowserWindowHeight //映像瀏覽器視窗高度
FCKConfig.FlashBrowser = true ; //是否關閉Flash瀏覽伺服器的功能
FCKConfig.FlashBrowserURL //Flash瀏覽伺服器的URL
FCKConfig.FlashBrowserWindowWidth //Flash瀏覽器視窗寬度
FCKConfig.FlashBrowserWindowHeight //Flash瀏覽器視窗高度
FCKConfig.LinkUpload = true ; //是否開啟檔案上傳的功能
FCKConfig.LinkUploadURL //指定預設上傳檔案的地址
FCKConfig.LinkUploadAllowedExtensions //設定允許上傳檔案的副檔名
FCKConfig.LinkUploadDeniedExtensions = "" ; //設定允許上傳指令檔的副檔名
FCKConfig.ImageUpload = true ; //是否開啟圖片上傳功能
FCKConfig.ImageUploadURL //指定預設上傳圖片檔案的地址
FCKConfig.ImageUploadAllowedExtensions //設定允許上傳圖片檔案的副檔名
FCKConfig.ImageUploadDeniedExtensions = "" ; //設定允許上傳圖片指令檔的副檔名
FCKConfig.FlashUpload = true ; //是否開啟Flash上傳功能
FCKConfig.FlashUploadURL //Flash上傳檔案的地址
FCKConfig.FlashUploadAllowedExtensions //設定允許上傳Flash檔案的副檔名
FCKConfig.FlashUploadDeniedExtensions = "" ; //設定允許上傳Flash指令檔的副檔名
FCKConfig.SmileyPath //插入表情表徵圖的路徑
FCKConfig.SmileyImages //表情表徵圖的檔案名稱
FCKConfig.SmileyColumns = 8 ; //表情視窗顯示表情列數
FCKConfig.SmileyWindowWidth = 320 ; //表情視窗顯示寬度,此視窗會因為表情檔案的改變而作調整
FCKConfig.SmileyWindowHeight = 210 ; //表情視窗顯示高度,此視窗會因為表情檔案的改變而作調整
FCKConfig.BackgroundBlockerColor = ‘#ffffff‘ ; //編輯器快顯視窗時,背景遮照住的顏色
FCKConfig.BackgroundBlockerOpacity = 0.50 ; //編輯器快顯視窗時,背景遮照住的透明度
FCKConfig.MsWebBrowserControlCompat = false ;
FCKConfig.PreventSubmitHandler = false ;
(轉)FCKeditor文字編輯器的使用方法