套件 | flashx.textLayout.conversion |
類別 | public class TextConverter |
繼承 | TextConverter Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
轉換資料的格式沒有預先定義;使用者寫入的轉換器可自由接受並傳回他們所選的任何格式。通用格式為字串、XML 和 ByteArray 實體。轉換器作者應記錄所支援的格式。
更多範例
屬性 | 定義自 | ||
---|---|---|---|
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
numFormats : int [靜態] [唯讀] 格式的數目。 | TextConverter |
方法 | 定義自 | ||
---|---|---|---|
[靜態]
註冊匯入/匯出的新格式。 | TextConverter | ||
addFormatAt(index:int, format:String, importerClass:Class, exporterClass:Class = null, clipboardFormat:String = null):void [靜態]
在指定位置註冊匯入/匯出的新格式。 | TextConverter | ||
[靜態]
將 TextFlow 匯出成指定的格式。 | TextConverter | ||
[靜態]
建立並傳回匯出轉換器,然後您可以使用該轉換器從 TextFlow 匯出至來源字串或 XML 物件。 | TextConverter | ||
[靜態] 傳回索引格式的格式名稱。 | TextConverter | ||
[靜態] 傳回索引格式的 FormatDescriptor。 | TextConverter | ||
[靜態]
建立並傳回匯入轉換器,然後您可以使用該轉換器從來源字串、XML 物件或任何使用者定義的資料格式匯入至 TextFlow。 | TextConverter | ||
指出物件是否有已定義的指定屬性。 | Object | ||
importToFlow(source:Object, format:String, config:IConfiguration = null):flashx.textLayout.elements:TextFlow [靜態]
使用指定格式從來源內容建立 TextFlow。 | TextConverter | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
[靜態]
移除格式。 | TextConverter | ||
[靜態]
移除索引位置的格式。 | TextConverter | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
會傳回指定之物件的字串形式。 | Object | ||
會傳回指定之物件的基本值。 | Object |
常數 | 定義自 | ||
---|---|---|---|
PLAIN_TEXT_FORMAT : String = "plainTextFormat" [靜態]
純文字格式。 | TextConverter | ||
TEXT_FIELD_HTML_FORMAT : String = "textFieldHTMLFormat" [靜態]
HTML 格式。 | TextConverter | ||
TEXT_LAYOUT_FORMAT : String = "textLayoutFormat" [靜態]
TextLayout 格式。 | TextConverter |
numFormats | 屬性 |
addFormat | () | 方法 |
public static function addFormat(format:String, importerClass:Class, exporterClass:Class, clipboardFormat:String):void
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
註冊匯入/匯出的新格式。新的格式會最後新增,因為其優先權最低。位置對於有多種可用格式選擇的用戶端來說非常重要,例如從外部剪貼簿匯入時。新的格式可支援匯入和/或匯出。如果已新增格式,則該格式會出現在多個位置中。將會使用找到的第一個。
參數
format:String — 要註冊的匯入轉換器類別或 null
| |
importerClass:Class — 要註冊的匯出轉換器類別或 null
| |
exporterClass:Class — 標記轉換器類別的格式字串。格式可以是任何名稱,但必須是唯一的。
| |
clipboardFormat:String — 當轉換到剪貼簿,或從剪貼簿轉換時,用來做為剪貼簿格式的字串。如果格式不支援剪貼簿存取,請設為 null。
|
addFormatAt | () | 方法 |
public static function addFormatAt(index:int, format:String, importerClass:Class, exporterClass:Class = null, clipboardFormat:String = null):void
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
在指定位置註冊匯入/匯出的新格式。位置對於有多種可用格式選擇的用戶端來說非常重要,例如從外部剪貼簿匯入時。較小的數字代表較高的優先權,因為將先嘗試這些轉換器。新的格式可支援匯入和/或匯出。如果已新增格式,則該格式會出現在多個位置中。將會使用找到的第一個。
參數
index:int — 要註冊的匯入轉換器類別或 null
| |
format:String — 要註冊的匯出轉換器類別或 null
| |
importerClass:Class — 標記轉換器類別的格式字串
| |
exporterClass:Class (default = null ) — 當轉換到剪貼簿,或從剪貼簿轉換時,用來做為剪貼簿格式的字串。如果格式不支援剪貼簿存取,請設為 null。
| |
clipboardFormat:String (default = null )
|
export | () | 方法 |
public static function export(source:flashx.textLayout.elements:TextFlow, format:String, conversionType:String):Object
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
將 TextFlow 匯出成指定的格式。
使用此類別提供的靜態常數之一、MIME 類型或使用者定義匯出器的使用者定義格式,來指定 format
參數:
- TextConverter.TEXT_FIELD_HTML_FORMAT
- TextConverter.PLAIN_TEXT_FORMAT
- TextConverter.TEXT_LAYOUT_FORMAT
使用 ConversionType 類別提供的靜態常數之一或使用者定義匯出器的使用者定義資料類型,來指定 conversionType
參數中的匯出資料類型:
- ConversionType.STRING_TYPE
- ConversionType.XML_TYPE
參數
source:flashx.textLayout.elements:TextFlow — 來源內容
| |
format:String — 輸出格式
| |
conversionType:String — 匯出資料的類型
|
Object — TextFlow 的物件匯出格式,或造成錯誤的 null
|
相關 API 元素
getExporter | () | 方法 |
public static function getExporter(format:String):flashx.textLayout.conversion:ITextExporter
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
建立並傳回匯出轉換器,然後您可以使用該轉換器從 TextFlow 匯出至來源字串或 XML 物件。如果您要執行許多個別的匯出作業,請使用此函數。其作用相當於呼叫 flashx.textLayout.conversion.TextConverter.export()
。
使用此類別提供的靜態常數之一來指定 format
參數:
- TextConverter.TEXT_FIELD_HTML_FORMAT
- TextConverter.PLAIN_TEXT_FORMAT
- TextConverter.TEXT_LAYOUT_FORMAT
如果已多次新增格式,將會使用找到的第一個。
參數
format:String — 匯出資料的目標格式
|
flashx.textLayout.conversion:ITextExporter — 可以指定格式匯出的 ITextExporter 文字匯出器
|
相關 API 元素
範例 ( 如何使用本範例 )
這個程式碼片段顯示利用 getExporter
方法來執行格式化文字的重複匯出。
package flashx.textLayout.conversion.examples { import flashx.textLayout.conversion.ConversionType; import flashx.textLayout.conversion.ITextExporter; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.elements.TextFlow; public class getExporter_example { // Serialize the TextFlow into a String public function export(textFlow:TextFlow):String { var exporter:ITextExporter = TextConverter.getExporter(TextConverter.TEXT_LAYOUT_FORMAT); return exporter.export(textFlow, ConversionType.STRING_TYPE) as String; } } }
getFormatAt | () | 方法 |
getFormatDescriptorAt | () | 方法 |
public static function getFormatDescriptorAt(index:int):FormatDescriptor
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
傳回索引格式的 FormatDescriptor。
參數
index:int |
FormatDescriptor |
getImporter | () | 方法 |
public static function getImporter(format:String, config:IConfiguration = null):flashx.textLayout.conversion:ITextImporter
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
建立並傳回匯入轉換器,然後您可以使用該轉換器從來源字串、XML 物件或任何使用者定義的資料格式匯入至 TextFlow。如果您要執行許多個別的匯入作業,或者您想在匯入時處理錯誤,請使用此方法。其作用相當於呼叫 flashx.textLayout.conversion.TextConverter.importToFlow()
。
使用此類別提供的靜態常數之一來指定 format
參數、MIME 類型或使用者定義的資料格式。
- TextConverter.TEXT_FIELD_HTML_FORMAT
- TextConverter.PLAIN_TEXT_FORMAT
- TextConverter.TEXT_LAYOUT_FORMAT
如果已多次新增格式,將會使用找到的第一個。
參數
format:String — 來源內容的格式。使用來自於 flashx.textLayout.conversion.TextConverter.TEXT_LAYOUT_FORMAT、PLAIN_TEXT_FORMAT 和 TEXT_FIELD_HTML_FORMAT 等的常數、MIME 類型或使用者定義格式。
| |
config:IConfiguration (default = null ) — 執行此匯入時要使用的組態。null 表示使用目前的預設值。您也可以透過 ITextImporter.configuration 屬性來設定組態。
|
flashx.textLayout.conversion:ITextImporter — 可以匯入來源資料的 ITextImporter 文字匯入器
|
相關 API 元素
範例 ( 如何使用本範例 )
這個程式碼片段會顯示利用 getImporter
方法來執行格式化文字的重複匯入。注意:每次開始呼叫 importToFlow
時,便會清除錯誤。
package flashx.textLayout.conversion.examples { import flashx.textLayout.conversion.ITextImporter; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.elements.TextFlow; public class getImporter_example { public function importAndCheckErrors():TextFlow { var markup:String = "<TextFlow xmlns='http://ns.adobe.com/textLayout/2008'><p><span>Hello, World</span></p></TextFlow>"; var importer:ITextImporter = TextConverter.getImporter(TextConverter.TEXT_LAYOUT_FORMAT); importer.throwOnError = false; var textFlow:TextFlow = importer.importToFlow(markup); if (!textFlow) { var errors:Vector.<String> = importer.errors; //deal with import errors } return textFlow; } } }
importToFlow | () | 方法 |
public static function importToFlow(source:Object, format:String, config:IConfiguration = null):flashx.textLayout.elements:TextFlow
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
使用指定格式從來源內容建立 TextFlow。
使用此類別提供的靜態常數之一和 MIME 類型來指定 format
參數,或使用使用者註冊匯入器的使用者定義值。
- TextConverter.TEXT_FIELD_HTML_FORMAT
- TextConverter.PLAIN_TEXT_FORMAT
- TextConverter.TEXT_LAYOUT_FORMAT
參數
source:Object — 來源內容
| |
format:String — 來源內容的格式
| |
config:IConfiguration (default = null ) — 建立新的 TextFlow 時要使用的 IConfiguration
|
flashx.textLayout.elements:TextFlow — 從來源建立的 TextFlow,或造成錯誤的 null。
|
相關 API 元素
removeFormat | () | 方法 |
removeFormatAt | () | 方法 |
PLAIN_TEXT_FORMAT | 常數 |
public static const PLAIN_TEXT_FORMAT:String = "plainTextFormat"
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
純文字格式。可用於從簡單、未格式化的字串建立 TextFlow,或用於從 TextFlow 建立簡單、未格式化的字串。
TEXT_FIELD_HTML_FORMAT | 常數 |
public static const TEXT_FIELD_HTML_FORMAT:String = "textFieldHTMLFormat"
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
HTML 格式。可用來執行 HTML 格式之 TextFlow 的匯入或匯出。Text Layout Framework HTML 支援 flash.text
套件中 TextField 類別所支援標籤與特質的子集。
下列表格列出支援匯入與匯出過程的 HTML 標籤與特質 (TextField 支援的標籤與特質,但是 Text Layout Framework 不支援的標籤與特質將特別描述為不支援):
標籤 | 說明 |
---|---|
錨點標籤 |
<a> 標籤會建立超連結,並支援下列特質:
|
粗體標籤 |
<b> 標籤會使文字呈現粗體。 所使用的字體必須具有粗體字樣。
|
斷行標籤 |
<br> 標籤會在文字中建立斷行。
|
字體標籤 |
<font> 標籤會指定字體或字體清單以顯示文字。字體標籤支援下列特質:
|
影像標籤 |
<img> 標籤可讓您將外部影像檔 (JPEG、GIF、PNG)、SWF 檔及影片片段嵌入文字中。
注意:與 TextField 類別不同,不支援下列特質: |
斜體標籤 |
<i> 標籤會將加上標籤的文字以斜體顯示。 所使用的字體必須具有斜體字樣。
|
清單項目標籤 | 注意:與 TextField 類別不同,不支援 List 項目標籤。 |
段落標籤 |
<p> 標籤會建立新的段落。 <p> 標籤支援下列特質:
|
Span 標籤 |
<span> 標籤支援下列特質:
|
文字格式標籤 |
|
底線標籤 |
<u> 標籤會為標籤內的文字加上底線。
|
將不明標籤匯入到 textFieldHTMLFormat
時,匯入器會將單一 FlowElement 的 typeName 屬性設定為該標籤名稱,或建立 typeName 屬性設為標籤名稱的 DivElement 或 SubParagraphGroupElement。
當不同於預設值時,textFieldHTMLFormat
匯出器會匯出 typeName
做為 XML 標籤。
相關 API 元素
TEXT_LAYOUT_FORMAT | 常數 |
public static const TEXT_LAYOUT_FORMAT:String = "textLayoutFormat"
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
TextLayout 格式。可用來執行 TextLayout 標記格式之 TextFlow 的匯入或匯出。「文字版面」格式會偵測以下錯誤:
- 未預期的名稱空間
- 不明的元素
- 不明的特質
此範例顯示 TextConverter
轉換類別的用法。標準標記格式的文字會匯入 TextFlow
物件,然後再顯示。接著文字會以 XML 格式匯出。
package flashx.textLayout.conversion.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.conversion.TextConverter; import flashx.textLayout.conversion.ConversionType; public class TextConverter_example extends Sprite { public function TextConverter_example() { var markup:String = "<TextFlow xmlns='http://ns.adobe.com/textLayout/2008'><p><span>Hello, World</span></p></TextFlow>"; var textFlow:TextFlow = TextConverter.importToFlow(markup, TextConverter.TEXT_LAYOUT_FORMAT); textFlow.flowComposer.addController(new ContainerController(this, 200, 50)); textFlow.flowComposer.updateAllControllers(); //export to XML var xmlOut:XML = TextConverter.export(textFlow,TextConverter.TEXT_LAYOUT_FORMAT, ConversionType.XML_TYPE) as XML; } } }
Tue Jun 12 2018, 03:47 PM Z