套件 | flashx.textLayout.elements |
類別 | public class SpanElement |
繼承 | SpanElement FlowLeafElement FlowElement Object |
子類別 | SpecialCharacterElement |
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
如果段落中的所有文字都共用一組相同的特質,則 ParagraphElement 會有單一 SpanElement 物件。如果段落中的文字具有多種格式,則它會有多個 SpanElement 物件。
預設 MXML 屬性mxmlChildren
更多範例
相關 API 元素
公用屬性
屬性 | 定義自 | ||
---|---|---|---|
alignmentBaseline : *
TextLayoutFormat:指定主基線對齊的基線。 | FlowElement | ||
backgroundAlpha : *
TextLayoutFormat:背景的 Alpha (透明度) 值 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
backgroundColor : *
TextLayoutFormat:文字的背景色彩 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
baselineShift : *
TextLayoutFormat:從 dominantBaseline 值位移基線的量。 | FlowElement | ||
blockProgression : *
TextLayoutFormat:指定行位置為垂直或水平走向。 | FlowElement | ||
breakOpportunity : *
TextLayoutFormat:將換行文字斷行時,控制斷行的位置。 | FlowElement | ||
cffHinting : *
TextLayoutFormat:用於此文字的 CFF 提示類型。 | FlowElement | ||
clearFloats : *
TextLayoutFormat:控制文字包圍在浮動物件四周的方式。 | FlowElement | ||
color : *
TextLayoutFormat:文字的色彩。 | FlowElement | ||
columnCount : *
TextLayoutFormat:文字欄的數目 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
columnGap : *
TextLayoutFormat:以像素為單位,指定欄之間所留間距空間的量 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
columnWidth : *
TextLayoutFormat:以像素為單位的欄寬 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
computedFormat : flashx.textLayout.formats:ITextLayoutFormat [覆寫] [唯讀]
對此元素使用的計算文字格式特質。 | FlowLeafElement | ||
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
coreStyles : Object [唯讀] 傳回此 FlowElement 的 coreStyles。 | FlowElement | ||
digitCase : *
TextLayoutFormat:用於此文字的數字大小寫類型。 | FlowElement | ||
digitWidth : *
TextLayoutFormat:用於此文字的數字寬度類型。 | FlowElement | ||
direction : *
TextLayoutFormat:指定文字區塊內文字的預設雙向內嵌層級。 | FlowElement | ||
dominantBaseline : *
TextLayoutFormat:指定貼齊 alignmentBaseline 的元素基線,以決定行上元素的垂直位置。 | FlowElement | ||
firstBaselineOffset : *
TextLayoutFormat:指定容器中第一行的基線位置。 | FlowElement | ||
fontFamily : *
TextLayoutFormat:要使用的字體名稱,或是以逗號分隔的字體名稱清單。 | FlowElement | ||
fontLookup : *
TextLayoutFormat:要使用字體查詢。 | FlowElement | ||
fontSize : *
TextLayoutFormat:以像素為單位的文字大小。 | FlowElement | ||
fontStyle : *
TextLayoutFormat:文字樣式。 | FlowElement | ||
fontWeight : *
TextLayoutFormat:字體粗細。 | FlowElement | ||
format : flashx.textLayout.formats:ITextLayoutFormat 直接套用至此元素的 TextLayoutFormat 屬性。 | FlowElement | ||
id : String
指定元素的識別名稱,如此只要參照此 id 就可以設定元素的樣式。 | FlowElement | ||
justificationRule : *
TextLayoutFormat:對齊段落中文字所使用的規則。 | FlowElement | ||
justificationStyle : *
TextLayoutFormat:段落對齊所用的樣式。 | FlowElement | ||
kerning : *
TextLayoutFormat:字距微調會調整某些字元組之間的像素,以改善可讀性。 | FlowElement | ||
leadingModel : *
TextLayoutFormat:指定行距模型,它結合了行距基礎及行距方向。 | FlowElement | ||
ligatureLevel : *
TextLayoutFormat:控制字體中定義的哪些連字可用於文字。 | FlowElement | ||
lineBreak : *
TextLayoutFormat:控制容器內的文字換行 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
lineHeight : *
TextLayoutFormat:文字的行距控制。 | FlowElement | ||
lineThrough : *
TextLayoutFormat:若為 true,將套用刪除線,亦即通過文字中間的線。 | FlowElement | ||
linkActiveFormat : *
TextLayoutFormat:定義正常狀態下的連結格式化特質。 | FlowElement | ||
linkHoverFormat : *
TextLayoutFormat:定義滑鼠位於連結範圍 (滑入) 時,停留狀態連結的格式化特質。 | FlowElement | ||
linkNormalFormat : *
TextLayoutFormat:定義正常狀態下的連結格式化特質。 | FlowElement | ||
listAutoPadding : *
TextLayoutFormat:當清單開始邊緣該側的邊框距離值設為 auto 時,這會將清單的開始邊緣指定為自動縮排。 | FlowElement | ||
listMarkerFormat : *
TextLayoutFormat:定義格式化特質清單標記。 | FlowElement | ||
listStylePosition : *
TextLayoutFormat:有效值為 ListStylePosition.INSIDE、ListStylePosition.OUTSIDE、FormatValue.INHERIT。若未定義預設值,則表示未設定。如果重疊顯示時未定義此屬性,則此屬性將繼承祖系的值。 | FlowElement | ||
listStyleType : *
TextLayoutFormat:有效值為 ListStyleType.UPPER_ALPHA、ListStyleType.LOWER_ALPHA、ListStyleType.UPPER_ROMAN、ListStyleType.LOWER_ROMAN、ListStyleType.NONE、ListStyleType.DISC、ListStyleType.CIRCLE、ListStyleType.SQUARE、ListStyleType.BOX、ListStyleType.CHECK、ListStyleType.DIAMOND、ListStyleType.HYPHEN、ListStyleType.ARABIC_INDIC、ListStyleType.BENGALI、ListStyleType.DECIMAL、ListStyleType.DECIMAL_LEADING_ZERO、ListStyleType.DEVANAGARI、ListStyleType.GUJARATI、ListStyleType.GURMUKHI、ListStyleType.KANNADA、ListStyleType.PERSIAN、ListStyleType.THAI、ListStyleType.URDU、ListStyleType.CJK_EARTHLY_BRANCH、ListStyleType.CJK_HEAVENLY_STEM、ListStyleType.HANGUL、ListStyleType.HANGUL_CONSTANT、ListStyleType.HIRAGANA、ListStyleType.HIRAGANA_IROHA、ListStyleType.KATAKANA、ListStyleType.KATAKANA_IROHA、ListStyleType.LOWER_ALPHA、ListStyleType.LOWER_GREEK、ListStyleType.LOWER_LATIN、ListStyleType.UPPER_ALPHA、ListStyleType.UPPER_GREEK、ListStyleType.UPPER_LATIN、FormatValue.INHERIT。若未定義預設值,則表示未設定。如果重疊顯示時未定義此屬性,則此屬性將繼承祖系的值。 | FlowElement | ||
locale : *
TextLayoutFormat:文字的地區設定。 | FlowElement | ||
mxmlChildren : Array
根據範圍標籤內的內容來設定文字;一律會刪除現有的子項。 | SpanElement | ||
paddingBottom : *
TextLayoutFormat:下方內移距 (像素)。 | FlowElement | ||
paddingLeft : *
TextLayoutFormat:左方內移距 (像素)。 | FlowElement | ||
paddingRight : *
TextLayoutFormat:右方內移距 (像素)。 | FlowElement | ||
paddingTop : *
TextLayoutFormat:上方內移距 (像素)。 | FlowElement | ||
paragraphEndIndent : *
TextLayoutFormat:指定段落結尾邊緣縮排量的數字 (以像素為單位)。 | FlowElement | ||
paragraphSpaceAfter : *
TextLayoutFormat:一個數字,指定段落後面要保留的空間量 (像素)。 | FlowElement | ||
paragraphSpaceBefore : *
TextLayoutFormat:一個數字,指定段落前面要保留的空間量 (像素)。 | FlowElement | ||
paragraphStartIndent : *
TextLayoutFormat:指定段落開頭邊緣縮排量的數字 (以像素為單位)。 | FlowElement | ||
parent : FlowGroupElement [唯讀] 傳回此 FlowElement 物件的父輩。 | FlowElement | ||
parentRelativeEnd : int [唯讀] 傳回父輩中此 FlowElement 物件的相對結尾。 | FlowElement | ||
parentRelativeStart : int [唯讀] 傳回父輩中此 FlowElement 物件的相對開頭。 | FlowElement | ||
renderingMode : *
TextLayoutFormat:用於此文字的顯示模式。 | FlowElement | ||
styleName : *
TextLayoutFormat:指定元素的識別類別,如此只要參照此 styleName 就可以設定元素的樣式。 | FlowElement | ||
styles : Object [唯讀] 傳回此 FlowElement 的樣式。 | FlowElement | ||
tabStops : *
TextLayoutFormat:指定段落關聯的定位停駐點。 | FlowElement | ||
text : String
接收此 SpanElement 物件所保留的文字 String。 | SpanElement | ||
textAlign : *
TextLayoutFormat:段落中各行相對於容器的對齊方式。 | FlowElement | ||
textAlignLast : *
TextLayoutFormat:段落中最後 (或唯一的) 一行相對於齊行文字中之容器的對齊方式。 | FlowElement | ||
textAlpha : *
TextLayoutFormat:文字的 Alpha (透明) 值。 | FlowElement | ||
textDecoration : *
TextLayoutFormat:文字上的裝飾。 | FlowElement | ||
textIndent : *
TextLayoutFormat:以像素為單位,指定段落中第一行縮排量的數字。 | FlowElement | ||
textJustify : *
TextLayoutFormat:指定對齊文字的選項。 | FlowElement | ||
textLength : int [唯讀]
傳回此 FlowElement 物件及其子系所擁有的文字總長度。 | FlowElement | ||
textRotation : *
TextLayoutFormat:決定此文字要旋轉的度數。 | FlowElement | ||
tracking : Object [唯寫]
設定字距調整,且與 trackingRight 屬性的意義相同。 | FlowElement | ||
trackingLeft : *
TextLayoutFormat:以像素為單位代表要套用至每個字元左側字距調整 (手動字距微調) 量的數字 (或 fontSize 的百分比,例如,120%)。 | FlowElement | ||
trackingRight : *
TextLayoutFormat:以像素為單位代表要套用至每個字元右側字距調整 (手動字距微調) 量的數字 (或 fontSize 的百分比,例如,120%)。 | FlowElement | ||
typeName : String
每個 FlowElement 都有 typeName。 | FlowElement | ||
typographicCase : *
TextLayoutFormat:用於此文字的印刷大小寫類型。 | FlowElement | ||
userStyles : Object 可讓您讀寫 FlowElement 物件上的使用者樣式。 | FlowElement | ||
verticalAlign : *
TextLayoutFormat:垂直對齊或齊行 (如果重疊顯示時未定義,則採用預設值)。 | FlowElement | ||
whiteSpaceCollapse : *
TextLayoutFormat:將文字匯入 TextFlow 時捨去或保留空格。 | FlowElement | ||
wordSpacing : *
TextLayoutFormat:指定對齊時要使用之文字間的最佳、最小及最大間距 (標準間距寬度的倍數)。 | FlowElement |
公用方法
方法 | 定義自 | ||
---|---|---|---|
建構函式 - 建立要在段落中放置文字執行的 SpanElement 物件。 | SpanElement | ||
清除此 FlowElement 物件中由 styleProp 參數所指定的樣式。 | FlowElement | ||
製作此 FlowElement 物件 (包含任何子系) 的深層複本,這會複製兩個指定字元位置之間的內容,並傳回複本做為 FlowElement 物件。 | FlowElement | ||
將這一個的 userStyles 與 otherElement 的 userStyles 進行比較。 | FlowElement | ||
傳回文字流排中的元素開始位置做為絕對索引。 | FlowElement | ||
傳回指定位置的字元 (與此 FlowElement 物件相對的位置)。 | FlowElement | ||
傳回指定位置的字元碼 (與此 FlowElement 相對的位置)。 | FlowElement | ||
傳回範圍的 FontMetrics 物件。 | FlowLeafElement | ||
傳回此元素的開頭 (與祖系元素相對的位置)。 | FlowElement | ||
傳回下一個 FlowLeafElement 物件。 | FlowLeafElement | ||
傳回文字流排階層中的下一個 FlowElement 同級項目。 | FlowElement | ||
傳回與此元素相關的 ParagraphElement 物件。 | FlowElement | ||
傳回上一個 FlowLeafElement 物件。 | FlowLeafElement | ||
傳回文字流排階層中的上一個 FlowElement 同級項目。 | FlowElement | ||
傳回 styleProp 參數所指定的樣式值,此參數會指定樣式名稱,而且可以包含任何使用者樣式名稱。 | FlowElement | ||
從流排元素取得指定的文字範圍。 | FlowElement | ||
往上瀏覽文字流排階層,以傳回元素的根 TextFlow 物件。 | FlowElement | ||
指出物件是否有已定義的指定屬性。 | Object | ||
實作物件已經建立而且在 MXML 標籤上指定的所有組件屬性已經初始化後,為 MXML 物件進行呼叫。 | FlowElement | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
根據指定的開始及結束位置,來更新文字範圍中的文字。 | SpanElement | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
將 styleProp 參數所指定的樣式設為 newValue 參數所指定的值。 | FlowElement | ||
製作此 FlowElement 物件的複本,這會複製兩個指定字元位置之間的內容。 | FlowElement | ||
在 relativePosition 參數指定的位置分割此 FlowElement 物件,而此參數是此元素在文字中的相對位置。 | FlowElement | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object |
屬性詳細資訊
mxmlChildren | 屬性 |
mxmlChildren:Array
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
根據範圍標籤內的內容來設定文字;一律會刪除現有的子項。此屬性是要在 Flex 中的 MXML 編譯匯入期間使用。Flash Professional 會忽略此屬性。TLF 標記元素具有其他 TLF 標記元素做為子系時,會將該子系指定給此屬性。
實作
public function get mxmlChildren():Array
public function set mxmlChildren(value:Array):void
擲回值
TypeError — 如果陣列元素不是 SpecialCharacterElement 或 String。
|
text | 屬性 |
建構函式詳細資料
SpanElement | () | 建構函式 |
public function SpanElement()
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
建構函式 - 建立要在段落中放置文字執行的 SpanElement 物件。
方法詳細資訊
replaceText | () | 方法 |
public function replaceText(relativeStartPosition:int, relativeEndPosition:int, textValue:String):void
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
根據指定的開始及結束位置,來更新文字範圍中的文字。若要插入文字,請將結束位置設為等於開始位置。若要將文字附加至範圍中的現有文字,請將開始位置及結束位置設為等於現有文字的長度。
取代的文字包含開始字元,且最多可到但不包含結束字元。
參數
relativeStartPosition:int — 要取代之文字開頭的索引位置 (與範圍開頭相對的位置)。範圍中的第一個字元位置是 0。
| |
relativeEndPosition:int — 要取代之文字的最後一個字元後面的索引 1 位置 (與範圍開頭相對的位置)。請將此值設為等於插入的 relativeStartPos 。
| |
textValue:String — 取代文字或要新增的文字 (視情況而定)。
|
擲回值
RangeError — 指定的 relativeStartPosition 或 relativeEndPosition 超出範圍,或是因取代而分割 Surrogate 字組。
|
範例 ( 如何使用本範例 )
此範例會多次呼叫 replaceText() 以執行下列各項:在文字開頭插入字串;在文字結尾附加字串;在文字中間插入字串;使用新的字串完整取代文字。
此範例使用第二個範圍 (span2) 來顯示結果。
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class SpanElement_replaceTextExample extends Sprite { public function SpanElement_replaceTextExample() { // create container and add it to the stage var container:Sprite = new Sprite(); this.stage.addChild(container); // create TextFlow, ParagraphElement, and SpanElement objects var textFlow:TextFlow = new TextFlow(); var paragraph:ParagraphElement = new ParagraphElement(); var span:SpanElement = new SpanElement; var span2:SpanElement = new SpanElement; // add composer and container controller var controller:ContainerController = new ContainerController(container, 200, 700 ); textFlow.flowComposer.addController(controller); textFlow.fontSize = 24; // set font size // create text string and add it to the span var str:String = "0123456"; span.text = str; // insert at the beginning span.replaceText(0, 0, "abc"); span2.text = span.text + '\n'; // append to the end of the text span.replaceText(10, 10, "abc"); span2.text += span.text + '\n'; // insert string in the middle of the text span.replaceText(5, 8, "abc"); span2.text += span.text + '\n'; // replace text with string span.replaceText(0, 13, "abc"); span2.text += span.text + '\n'; // replace text with string span.replaceText(0, 3, "That's all she wrote!\n"); span2.text += span.text + '\n'; // display the results paragraph.addChild(span2); textFlow.addChild(paragraph); textFlow.flowComposer.updateAllControllers(); } } }
範例 如何使用本範例
SpanElementExample.as
此範例使用兩個具有不同樣式的 SpanElement 物件來顯示 Hello World。
package flashx.textLayout.elements.examples { import flash.display.Sprite; import flash.text.engine.FontPosture; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; public class SpanElementExample extends Sprite { public function SpanElementExample() { // create a container and add it to the stage var container:Sprite = new Sprite(); this.stage.addChild(container); // create TextFlow, ParagraphElement, and SpanElement objects var textFlow:TextFlow = new TextFlow(); var p:ParagraphElement = new ParagraphElement(); var spanHello:SpanElement = new SpanElement(); var spanWorld:SpanElement = new SpanElement(); // add text and styles to the spans spanHello.text = "Hello, "; spanHello.fontSize = 48; spanWorld.text = "World!"; spanWorld.fontSize = 56; spanWorld.fontStyle = FontPosture.ITALIC; spanWorld.color = 0xFFCC00; // add spans to paragraph, paragraph to text flow p.addChild(spanHello); p.addChild(spanWorld); textFlow.addChild(p); // update controller to display text var controller:ContainerController = new ContainerController(container, 400, 200 ); textFlow.flowComposer.addController(controller); textFlow.flowComposer.updateAllControllers(); } } }
Tue Jun 12 2018, 03:47 PM Z