可透過一系列外掛程式使用RTE功能,每個外掛程式都具有features屬性。 您可以配置功能屬性以啟用或禁用一個或多個RTE功能。 本文說明如何具體設定RTE外掛程式。
如需其他RTE設定的詳細資訊,請參閱 設定RTF編輯器.
使用CRXDE Lite時,建議您定期使用 全部儲存 選項。
若要啟用外掛程式,請依照下列步驟操作。 只有在您首次設定外掛程式時,才需要執行某些步驟,因為對應的節點不存在。
依預設, format
, link
, list
, justify
,和 control
外掛程式及其所有功能都已在RTE中啟用。
各 rtePlugins
節點稱為 <rtePlugins-node>
以避免本文重複。
使用CRXDE Lite,找出專案的文字元件。
建立的父節點 <rtePlugins-node>
如果不存在,請在設定任何RTE外掛程式之前:
根據您的元件,父節點為:
config: .../text/cq:editConfig/cq:inplaceEditing/config
.../text/cq:editConfig/cq:inplaceEditing/inplaceEditingTextConfig
text: .../text/dialog/items/tab1/items/text
類型: jcr:primaryType cq:Widget
兩者皆具有下列屬性:
name
String
./text
根據您為配置的介面,建立節點 <rtePlugins-node>
,如果不存在:
rtePlugins
nt:unstructured
在下方,為每個您要啟用的外掛程式建立節點:
nt:unstructured
啟動外掛程式後,請依照下列准則來設定 features
屬性。
啟用所有功能 | 啟用一些特定功能。 | 禁用所有功能。 | |
---|---|---|---|
名稱 | 功能 | 功能 | 功能 |
類型 | 字串 | String (多字串;將類型設定為 String 按一下 Multi 在CRXDE Lite中) |
字串 |
值 | * (星號) |
設定為一個或多個特徵值。 | - |
此 findreplace
外掛程式不需要任何設定。 它是現成的。
使用取代功能時,應在輸入要取代的取代字串時與尋找字串同時輸入。 不過,在替換字串之前,您仍可以按一下「尋找」來搜尋字串。 如果在按一下「查找」後輸入替換字串,則搜索將重置為文本的開頭。
點擊查找時,查找和替換對話框變為透明,點擊替換時變為不透明。 行為可讓作者檢閱要取代的文字。 如果用戶按一下「全部替換」(replace all),對話框將關閉並顯示已進行替換的數量。
使用RTE時,作者可以在下列三種模式之一中貼上內容:
瀏覽器模式:使用瀏覽器的預設貼上實作來貼上文字。 它不是推薦的方法,因為它可能引入不想要的標籤。
純文字模式:將剪貼簿內容貼為純文字。 它會先從複製的內容中移除所有樣式和格式元素,然後再插入 Experience Manager 元件。
MS Word模式:從MS Word複製時,貼上帶有格式的文本(包括表格)。 不支援從其他源(如網頁或MS Excel)複製和貼上文本,並且僅保留部分格式。
您可以在RTE工具列中提供以下三個圖示的一部分、全部或全部不提供給作者:
貼上(Ctrl+V):可以預先設定,以對應上述三種「貼上」模式之一。
貼上為文字:提供純文字檔案模式功能。
從Word貼上:提供MS Word模式功能。
若要設定RTE以顯示必要的圖示,請遵循下列步驟。
/apps/<myProject>/components/text
.rtePlugins/edit
. 請參閱 啟用外掛程式 如果節點不存在。features
屬性 edit
節點,並添加一個或多個功能。 儲存所有變更。您可以預先設定 貼上(Ctrl+V) 圖示,使用下列步驟。 此設定也定義作者用來貼上內容的鍵盤快速鍵Ctrl+V的行為。
此設定允許下列三種使用案例:
使用瀏覽器的預設貼上實作來貼上文字。 它不是推薦的方法,因為它可能引入不想要的標籤。 使用 browser
下方。
將剪貼簿內容貼為純文字。 它會先從複製的內容中移除所有樣式和格式元素,然後再插入 Experience Manager 元件。 使用 plaintext
下方。
從MS Word複製時,貼上帶有格式的文本(包括表格)。 不支援從其他源(如網頁或MS Excel)複製和貼上文本,並且僅保留部分格式。 使用 wordhtml
下方。
在元件中,導覽至 <rtePlugins-node>/edit
節點。 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
在 edit
節點使用以下詳細資訊建立屬性:
defaultPasteMode
String
browser
, plaintext
,或 wordhtml
模式。貼上為Microsoft字(paste-wordhtml
)模式,以便您在貼入時可明確允許一些樣式 Experience Manager 來自其他程式,例如 Microsoft Word.
例如,若在貼入時僅允許使用粗體格式和清單 Experience Manager,您可以篩選其他格式。 這稱為可設定的貼上篩選,可針對下列兩項執行:
對於連結,您也可以定義自動接受的通訊協定。
配置將文本貼入時允許的格式 Experience Manager 從另一個程式:
在元件中,導覽至節點 <rtePlugins-node>/edit
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
在 edit
用於保存HTML貼上規則的節點:
htmlPasteRules
nt:unstructured
在下建立節點 htmlPasteRules
,以保留允許的基本格式的詳細資訊:
allowBasics
nt:unstructured
若要控制接受的個別格式,請在 allowBasics
節點:
bold
italic
underline
anchor
(適用於連結和命名錨點)image
所有屬性均為 類型 Boolean
,因此在適當 值 您可以選取或移除勾號以啟用或停用功能。
若未明確定義,則會使用預設值true,並接受格式。
也可以使用一系列其他屬性或節點來定義其他格式,也可套用至 htmlPasteRules
節點:
屬性 | 類型 | 說明 |
---|---|---|
allowBlockTags |
String |
定義允許的區塊標籤清單。 一些可能的塊標籤包括標題(h1、h2、h3)、段落§、清單(ol、ul)、表(表)。 |
fallbackBlockTag |
String |
定義用於任何區塊的區塊標籤,其中區塊標籤未包含在 allowBlockTags . 通常, p 夠了。 |
table |
nt:unstructured |
定義貼上表格時的行為。 此節點必須具有屬性允許(類型布林值),才能定義是否允許貼上表。 如果allow設定為false,則必須指定屬性ignoreMode(類型字串)以定義如何處理貼上的表內容。 ignoreMode的有效值為 remove 刪除表內容 paragraph 將表格儲存格轉換為段落。 |
list |
nt:unstructured |
定義貼上清單時的行為。 必須具有屬性 allow (類型布林值),定義是否允許貼上清單。 若 allow 設為 false ,指定屬性 ignoreMode (類型) String )來定義如何處理貼上的任何清單內容。 ignoreMode的有效值為 remove 移除清單內容及 paragraph 可將清單項目轉換為段落。 |
有效的範例 htmlPasteRules
結構如下:
"htmlPasteRules": {
"allowBasics": {
"italic": true,
"link": true
},
"allowBlockTags": [
"p", "h1", "h2", "h3"
],
"list": {
"allow": false,
"ignoreMode": "paragraph"
},
"table": {
"allow": true,
"ignoreMode": "paragraph"
}
}
作者可套用樣式以變更部分文字的外觀。 樣式以您在CSS樣式表中預先定義的CSS類別為基礎。 程式化內容包含在 span
標籤使用 class
屬性來參考CSS類別。 例如:
<span class=monospaced>Monospaced Text Here</span>
首次啟用樣式外掛程式時,沒有可用的預設樣式。 快顯清單為空。 若要為作者提供樣式,請執行下列動作:
對於以後的重新配置,例如要添加更多樣式,請僅按照說明參考新樣式表並指定其他樣式。
您也可以為 表或表單元格. 這些設定需要個別的程式。
若要這麼做,請啟用樣式外掛程式。
在元件中,導覽至節點 <rtePlugins-node>/styles
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
建立 features
屬性 styles
節點:
features
String
*
(星號)儲存所有變更。
啟用樣式外掛程式後,樣式下拉式清單會顯示在編輯對話方塊中。 但清單為空,因為未設定樣式。
然後,指定要參照的樣式表的位置:
導覽至文字元件的根節點,例如 /apps/<myProject>/components/text
.
新增屬性 externalStyleSheets
到的父節點 <rtePlugins-node>
:
externalStyleSheets
String[]
(多字串;按一下 多 (在CRXDE)您隨後可以將參照添加到其他樣式表。
儲存所有變更。
在對話方塊(傳統UI)中使用RTE時,您可以指定針對RTF編輯而最佳化的樣式表。 由於技術限制,CSS內容在編輯器中會遺失,因此您可以模擬此內容以改善WYSIWYG體驗。
RTF編輯器使用ID為的容器DOM元素 CQrte
提供不同樣式供檢視和編輯:
#CQ td {
// defines the style for viewing
}
#CQrte td {
// defines the style for editing
}
在元件定義中,導覽至節點 <rtePlugins-node>/styles
,如 啟用樣式下拉式選取器.
在節點底下 styles
,建立節點(亦稱為 styles
),保留清單可供使用:
styles
cq:WidgetCollection
在 styles
表示單個樣式的節點:
nt:unstructured
新增屬性 cssName
到此節點以引用CSS類:
cssName
String
cssClass
而非 .cssClass
)新增屬性 text
到同一節點;這會定義選取方塊中顯示的文字:
text
String
儲存變更。
對每個所需樣式重複上述步驟。
作者使用 Experience Manager 若要製作日文內容,可將樣式套用至字元,以避免不需要分行符號的分行符號。 這可讓作者讓句子在想要的位置中斷。 此功能的樣式以CSS樣式表中預先定義的CSS類別為基礎。
若要建立可供作者套用至日文文字的樣式,請執行下列步驟:
在樣式節點下建立節點。 請參閱 指定樣式.
jpn-word-wrap
nt:unstructure
新增屬性 cssName
到要引用CSS類的節點。 此類名是日文換行功能的保留名稱。
cssName
String
jpn-word-wrap
(不含前面的 .
)將屬性文字新增至相同節點。 值是作者在選取樣式時看到的樣式名稱。
text
String
Japanese word-wrap
建立樣式表並指定其路徑。 請參閱 指定樣式表的位置. 將下列內容添加到樣式表。 視需要變更背景顏色。
.text span.jpn-word-wrap {
display:inline-block;
}
.is-edited span.jpn-word-wrap {
background-color: #ffddff;
}
在RTE中創作的任何文本都放置在塊標籤中,預設值為 <p>
. 啟用 paraformat
外掛程式中,可使用下拉式選取清單,指定可指派給段落的其他區塊標籤。 段落格式通過分配正確的塊標籤來確定段落類型。 作者可使用「格式」選取器來選取及指派。 範例區塊標籤除其他外,包括標準段落 <p> 和標題 <h1>, <h2>等。
此外掛程式不適用於結構複雜的內容,例如清單或表格。
如果區塊標籤,例如 <hr>
標籤,無法指派給段落,它不是 paraformat
外掛程式。
首次啟用「段落格式」插件時,沒有預設的段落格式可用。 快顯清單為空。 要向作者提供段落格式,請執行以下操作:
對於以後的重新配置,例如要添加更多格式,請只遵循說明的相關部分。
若要啟用 paraformat
外掛程式,請依照下列步驟執行:
在元件中,導覽至節點 <rtePlugins-node>/paraformat
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
建立 features
屬性 paraformat
節點:
features
String
*
(星號)如果插件未進一步配置,則啟用的預設格式為段落( <p>
),標題1( <h1>
),標題2( <h2>
),標題3( <h3>
)。
配置RTE的段落格式時,請勿刪除段落標籤 <p> 作為格式選項。 若 <p>
標籤遭移除,內容作者便無法選取 段落格式 選項,即使有其他格式設定亦然。
可通過以下方式選擇段落格式:
在元件定義中,導覽至節點 <rtePlugins-node>/paraformat
,如 啟用格式下拉式選取器.
在 paraformat
節點建立節點,以保存格式清單:
formats
cq:WidgetCollection
在 formats
節點,此欄位將保留個別格式的詳細資訊:
nt:unstructured
向此節點新增屬性以定義所使用的區塊標籤:
名稱 tag
類型 String
值 格式的區塊標籤;例如:p、h1、h2等
您不需要輸入定界角括弧。
同一個節點新增另一個屬性,讓描述性文字顯示在下拉式清單中:
description
String
儲存變更。
對每個必要格式重複步驟。
如果您定義自訂格式,預設格式(<p>
, <h1>
, <h2>
,和 <h3>
)。 重新建立 <p>
格式,因為它是預設格式。
在標準中 Experience Manager 安裝,當 misctools
外掛程式可啟用特殊字元(specialchars
)預設選取項目立即可供使用;例如,版權符號和商標符號。
您可以設定RTE,讓您選取的字元可供使用;定義不同字元或整個序列。
新增特殊字元會覆寫預設選取項目。 如果需要,在您的選項中重定義這些字元。
在元件中,導覽至節點 <rtePlugins-node>/misctools
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
建立 features
屬性 misctools
節點:
名稱 features
類型 String[]
值 specialchars
(或 String / *
若要套用此外掛程式的所有功能)
在 misctools
建立節點以保存特殊字元配置:
specialCharsConfig
nt:unstructured
在 specialCharsConfig
建立另一個節點以保存字元清單:
chars
nt:unstructured
在 chars
添加節點以保存單個字元定義:
nt:unstructured
向此節點添加以下屬性:
entity
String
&189;
一半。儲存變更。
在CRXDE中,儲存屬性後,會顯示表示的字元。 請參閱下方的一半範例。 重複上述步驟,讓作者可使用更多特殊字元。
使用步驟1到3(從 定義單一字元.
在 chars
新增節點以保留字元範圍的定義:
nt:unstructured
在此節點下(根據您的特殊字元範圍命名)新增下列兩個屬性:
儲存變更。
例如,定義9998 - 10000範圍時,會提供下列字元。
圖:在CRXDE中,定義要在RTE中可用的字元範圍
樣式通常會套用在文字上,但也可以在表格或一些表格儲存格上套用個別的樣式集。 在「單元格屬性」或「表屬性」對話框的「樣式選擇器」框中,作者可以使用此類樣式。 在文本元件(或衍生元件)內編輯表時,這些樣式可用,在標準表元件中不可用。
您只能為傳統UI定義表格和儲存格的樣式。
在RTE元件中或從RTE元件複製和貼上表格取決於瀏覽器。 並非所有瀏覽器都可立即使用。 根據表格結構和瀏覽器,您可能會獲得不同的結果。 例如,當您在傳統UI和觸控式UI的Mozilla Firefox中,將表格複製並貼到RTE元件時,不會保留表格的版面。
在元件內導覽至節點 <rtePlugins-node>/table
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
建立 features
屬性 table
節點:
features
String
*
如果不要啟用所有表功能,可以建立 features
屬性如下:
String[]
定義CSS樣式表的位置以參照這些樣式表。 請參閱 指定樣式表的位置 因為這與定義 文本樣式. 如果您定義其他樣式,則可定義位置。
在 table
節點根據需要建立以下節點:
定義整個表格的樣式(可在 表屬性):
tableStyles
cq:WidgetCollection
定義個別儲存格的樣式(可在 儲存格屬性),
cellStyles
cq:WidgetCollection
建立節點(在 tableStyles
或 cellStyles
節點)來表示個別樣式,
nt:unstructured
在此節點上建立屬性:
若要定義參考的CSS樣式,
cssName
String
.
,例如 cssClass
而非 .cssClass
)若要定義要在快顯選取器中顯示的描述性文字,
text
String
儲存所有變更。
對每個所需樣式重複上述步驟。
有時,您可能會建立資料表,而欄標題中沒有視覺文字,假設標題的用途是由欄與其他欄的視覺關係所隱含。 在此情況下,必須在標題儲存格的儲存格內提供隱藏的內部文字,讓螢幕助讀程式和其他輔助技術可協助有各種需求的讀者了解欄的目的。
為了在這類情況下增強協助工具,RTE支援隱藏的標題儲存格。 此外,它還提供與表格中隱藏標題相關的配置設定。 這些設定可讓您在編輯和預覽模式中,對隱藏的標題套用CSS樣式。 若要協助作者在編輯模式中識別隱藏的標題,請在程式碼中加入下列參數:
hiddenHeaderEditingCSS
:指定在編輯RTE時,在隱藏標題儲存格上套用的CSS類別名稱。hiddenHeaderEditingStyle
:指定在編輯RTE時,在隱藏標題單元格上應用的樣式字串。如果在代碼中同時指定CSS和樣式字串,則CSS類優先於樣式字串,並且可能覆蓋樣式字串所做的任何配置更改。
若要協助作者在預覽模式中對隱藏的標題套用CSS,您可以在程式碼中加入下列參數:
hiddenHeaderClassName
:指定在預覽模式中在隱藏的標題單元格上應用的CSS類的名稱。hiddenHeaderStyle
:指定在預覽模式中在隱藏標題單元格上應用的樣式字串。如果在代碼中同時指定CSS和樣式字串,則CSS類優先於樣式字串,並且可能覆蓋樣式字串所做的任何配置更改。
啟動拼字檢查外掛程式時,RTE會針對每種適當語言使用字典。 然後根據網站的語言來選取這些檔案,方法是提取子樹的語言屬性或從URL中提取語言;例如, the /en/
分支會檢查為英文, /de/
分支為德語。
消息「拼寫檢查失敗」。 如果針對未安裝的語言嘗試檢查,則會顯示。
標準Experience Manager安裝包含下列用途的字典:
標準字典位於 /libs/cq/spellchecker/dictionaries
,以及適當的讀我檔案。 請勿修改檔案。
若要新增更多字典(如有需要),請依照下列步驟操作。
選取所需語言,並下載包含拼字定義的ZIP檔案。 解壓縮檔案系統上的封存內容。
只有 MySpell
支援OpenOffice.org v2.0.1或更舊版本的格式。 由於字典現在是封存檔案,因此建議您在下載後驗證封存。
找到.aff和.dic檔案。 將檔案名保持為小寫。 例如, de_de.aff
和 de_de.dic
.
在存放庫中載入.aff和.dic檔案(位於 /apps/cq/spellchecker/dictionaries
.
RTE拼字檢查器可隨選使用。 當您開始輸入文字時,它不會自動執行。
若要執行拼字檢查器,請點選/按一下工具列中的「拼字檢查器」按鈕。 RTE會檢查字詞拼寫,並反白標示拼錯的字詞。
如果您納入拼寫檢查程式建議的任何更改,文本更改的狀態和拼寫錯誤的單詞將不再突出顯示。 若要執行拼字檢查程式,請再次點選/按一下「拼字檢查程式」按鈕。
RTE可讓作者還原或重做最後幾次編輯。 依預設,歷史記錄中會儲存50個編輯項目。 您可以視需要設定此值。
在元件內導覽至節點 <rtePlugins-node>/undo
. 如果這些節點不存在,請建立這些節點。 如需詳細資訊,請參閱 啟用外掛程式.
在 undo
節點建立屬性:
maxUndoSteps
Long
0
以完全停用還原/重做。儲存變更。
在任何文本中按定位字元時,插入預定數量的空格;依預設,這是三個不中斷的空格和一個空格。
要定義頁簽大小,請執行以下操作:
在元件中,導覽至節點 <rtePlugins-node>/keys
. 如果節點不存在,請建立節點。 如需詳細資訊,請參閱 啟用外掛程式.
在 keys
節點建立屬性:
tabSize
String
儲存變更。
啟用縮進時(預設值),可以定義縮進的大小:
此縮進大小僅應用於文本的段落(塊);它不會影響實際清單的縮排。
在元件內導覽至節點 <rtePlugins-node>/lists
. 如果這些節點不存在,請建立這些節點。 如需詳細資訊,請參閱 啟用外掛程式.
在 lists
節點建立 identSize
參數:
identSize
Long
您可以定義元件對話方塊中顯示的可編輯空間的高度。 只有在對話方塊中使用RTE時,才適用此設定。 配置不會更改對話框窗口的高度。
在 ../items/text
節點,在元件的對話框定義中,建立屬性:
height
Long
儲存變更。
在中新增連結時 Experience Manager,您可以定義要使用的CSS樣式以及自動接受的通訊協定。 若要設定如何在 Experience Manager 從其他程式中,定義HTML規則。
使用CRXDE Lite,找出專案的文字元件。
在與 <rtePlugins-node>
,即在的父節點下建立節點 <rtePlugins-node>
:
htmlRules
nt:unstructured
此 ../items/text
節點具有以下屬性:
xtype
String
richtext
的位置 ../items/text
節點可能會因對話方塊的結構而異。 兩個例子 /apps/myProject>/components/text/dialog/items/text
和 /apps/<myProject>/components/text/dialog/items/panel/items/text
.
在 htmlRules
,建立節點。
links
nt:unstructured
在 links
節點根據需要定義屬性:
內部連結的CSS樣式:
cssInternal
String
cssClass
而非 .cssClass
)外部連結的CSS樣式
cssExternal
String
cssClass
而非 .cssClass
)有效陣列 通訊協定 包括 https://
, https://
, file://
, mailto:
,等等
protocols
String[]
defaultProtocol (類型屬性) 字串):若使用者未明確指定通訊協定,則使用的通訊協定。
defaultProtocol
String
如何處理連結目標屬性的定義。 建立節點:
targetConfig
nt:unstructured
在節點上 targetConfig
:定義所需屬性:
指定目標模式:
名稱 mode
類型 String
)
值(s):
auto
:表示已選擇自動目標
(由 targetExternal
外部連結的屬性,或 targetInternal
內部連結)。
manual
:不適用於此情境
blank
:不適用於此情境
內部連結的目標:
targetInternal
String
auto
)外部連結的目標:
targetExternal
String
auto
)。儲存所有變更。