Пакет | flash.text.engine |
Класс | public final class GroupElement |
Наследование | GroupElement ContentElement Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
content
объекта TextBlock. Объект GroupElement также может просто использовать общее форматирование с другим элементом GroupElement.
Когда GroupElement содержит другой объект GroupElement, этот внутренний GroupElement сохраняет собственное форматирование (параметры ElementFormat). Он не наследует форматирование внешнего GroupElement.
Большинство свойств форматирования не влияют на GroupElement. По этой причине можно создать текстовую строку для объекта GroupElement, имеющего нулевой параметр elementFormat
. Несколько свойств формата, такие как kerning
и ligature
, все же оказывают влияние на форматирование там, где имеет место пересечение между членами группы. Если группа имеет нулевой формат, то при пересечении членов группы форматирование определяется форматом предшествующего элемента.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
elementCount : int [только для чтения]
Количество элементов в группе. | GroupElement | ||
elementFormat : ElementFormat
Объект ElementFormat, используемый для элемента. | ContentElement | ||
eventMirror : EventDispatcher
Объект EventDispatcher, получающий копии каждого события, вызванного для действительных текстовых строк, созданных на основе данного элемента содержимого. | ContentElement | ||
groupElement : GroupElement [только для чтения]
Объект GroupElement, содержащий этот элемент, или null, если это не группа. | ContentElement | ||
rawText : String [только для чтения]
Копия текста в элементе, включая символы U+FDEF. | ContentElement | ||
text : String [только для чтения]
Копия текста в элементе, за исключением символов U+FDEF, представляющих графические элементы в объекте String. | ContentElement | ||
textBlock : flash.text.engine:TextBlock [только для чтения]
Объект TextBlock, которому принадлежит этот элемент. | ContentElement | ||
textBlockBeginIndex : int [только для чтения]
Индекс в первого символа в этом элементе текстового блока. | ContentElement | ||
textRotation : String
Поворот, который должен применяться к элементу, как к едином целому. | ContentElement | ||
userData : *
Дает возможность приложению связать произвольные данные с элементом. | ContentElement |
Метод | Определено | ||
---|---|---|---|
GroupElement(elements:Vector.<ContentElement> = null, elementFormat:ElementFormat = null, eventMirror:EventDispatcher = null, textRotation:String = "rotate0")
Создает новый экземпляр GroupElement. | GroupElement | ||
Возвращает элемент из группы. | GroupElement | ||
Возвращает элемент, содержащий символ, заданный параметром charIndex. | GroupElement | ||
Возвращает элемент, содержащий символ, заданный параметром element. | GroupElement | ||
Заменяет диапазон элементов, который задается параметрами beginIndex и endIndex для нового GroupElement с этими элементами. | GroupElement | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Смешивает текст из диапазона элементов, задаваемого параметрами beginIndex и endIndex в элементе, заданном beginIndex без изменения формата элемента. | GroupElement | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
replaceElements(beginIndex:int, endIndex:int, newElements:Vector.<ContentElement>):Vector.<ContentElement>
Заменяет диапазон элементов, заданный параметрами beginIndex и endIndex, содержанием параметра newElements. | GroupElement | ||
Устанавливает элементы в группе для содержимого вектора. | GroupElement | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Разбивает объект TextElement на два, создавая новый TextElement в указанной позиции. | GroupElement | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Разгруппировывает элементы во вложенном GroupElement, который задается с помощью groupIndex внутри внешнего GroupElement. | GroupElement | ||
Возвращает элементарное значение заданного объекта. | Object |
elementCount | свойство |
GroupElement | () | Конструктор |
public function GroupElement(elements:Vector.<ContentElement> = null, elementFormat:ElementFormat = null, eventMirror:EventDispatcher = null, textRotation:String = "rotate0")
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Создает новый экземпляр GroupElement.
Параметрыelements:Vector.<ContentElement> (default = null ) — Вектор объектов ContentElement в GroupElement. Вектор может быть пуст. По умолчанию используется null .
| |
elementFormat:ElementFormat (default = null ) — Формат элемента для группы. По умолчанию используется null . Формат применяется к пересечениям элементов в группе, эти элементы не наследуют формат.
| |
eventMirror:EventDispatcher (default = null ) — Объект EventDispatcher , получающий копии каждого события, вызванного для текстовых строк, созданных на основе данного элемента содержимого. По умолчанию используется null .
| |
textRotation:String (default = "rotate0 ") — При вращении элемент был использован в качестве единого целого. Используйте константы TextRotation для этого свойства. Значение по умолчанию равно TextRotation.ROTATE_0 .
|
Выдает
ArgumentError — Заданный element содержит элементы со значением null .
| |
ArgumentError — Заданный element содержит элемент, не являющийся известным подклассом ContentElement .
| |
ArgumentError — Заданный element содержит элементы, заданные в качестве значения content объекта TextBlock .
| |
ArgumentError — Заданный element содержит элементы, которые уже являются членами группы, либо встречаются более одного раза в elements .
|
Связанные элементы API
getElementAt | () | метод |
public function getElementAt(index:int):ContentElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает элемент из группы.
Параметры
index:int — Индекс получаемого элемента.
|
ContentElement |
Выдает
RangeError — Если index вне диапазона.
|
getElementAtCharIndex | () | метод |
public function getElementAtCharIndex(charIndex:int):ContentElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает элемент, содержащий символ, заданный параметром charIndex
.
Параметры
charIndex:int — Отсчитываемое от нуля значение символа, чей элемент нужно найти. Значение 0 соответствует первому символу в группе, ноне первому символу TextBlock.
|
ContentElement — Элемент, содержащий символ с индексом charIndex
|
Выдает
RangeError — Если charIndex вне диапазона 0 — rawText.length .
|
getElementIndex | () | метод |
public function getElementIndex(element:ContentElement):int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает элемент, содержащий символ, заданный параметром element
.
Параметры
element:ContentElement — Элемент в группе, индекс которого необходимо возвратить.
|
int — Индекс элемента, заданный свойством element или -1, если элемент вне группы.
|
groupElements | () | метод |
public function groupElements(beginIndex:int, endIndex:int):GroupElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Заменяет диапазон элементов, который задается параметрами beginIndex
и endIndex
для нового GroupElement
с этими элементами. Согласно проекту, заменяются элементы от beginIndex до endIndex-1.
Параметры
beginIndex:int — Отсчитываемое от нуля значение индекса для начального положения диапазона группировки.
| |
endIndex:int — Отсчитываемое от нуля значение индекса, следующее за конечным положением диапазона группировки.
|
GroupElement — Новая группа.
|
Выдает
RangeError — Если индексы beginIndex или endIndex находятся вне диапазона.
|
mergeTextElements | () | метод |
public function mergeTextElements(beginIndex:int, endIndex:int):flash.text.engine:TextElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Смешивает текст из диапазона элементов, задаваемого параметрами beginIndex
и endIndex
в элементе, заданном beginIndex
без изменения формата элемента. Согласно проекту, сливаются элементы от beginIndex до endIndex-1. После смешивания текста элементы от beginIndex+1 до endIndex-1 удаляются из группы и для них отменяются родители, значение null
присваивается их свойству group
.
Параметры
beginIndex:int — Отсчитываемое от нуля значение индекса для начального положения диапазона замены.
| |
endIndex:int — Отсчитываемое от нуля значение индекса, следующее за конечным положением диапазона слияния.
|
flash.text.engine:TextElement — Первый текстовый элемент в диапазоне, теперь содержащим весь текст диапазона.
|
Выдает
RangeError — Если индексы beginIndex или endIndex находятся вне диапазона.
| |
ArgumentError — Если какой-либо элемент в диапазоне не является объектом TextElement.
|
Связанные элементы API
replaceElements | () | метод |
public function replaceElements(beginIndex:int, endIndex:int, newElements:Vector.<ContentElement>):Vector.<ContentElement>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Заменяет диапазон элементов, заданный параметрами beginIndex
и endIndex
, содержанием параметра newElements
. Заменяются элементы от beginIndex до endIndex-1.
Для создания элементов передайте null
для newElements
. Для вставки элемента передайте то же значение для beginIndex
и endIndex
. Новый элемент вставляется перед заданным индексом. Для добавления элемента передайте elementCount
для beginIndex
и endIndex
.
После выполнения операции замещенные элементы лишаются родителей, и возвращается значение null
для свойств group
.
Параметры
beginIndex:int — Отсчитываемое от нуля значение индекса для начального положения диапазона замены.
| |
endIndex:int — Отсчитываемое от нуля значение индекса, следующее за конечным положением диапазона замены.
| |
newElements:Vector.<ContentElement> — Элементы для замены заданного диапазона элементов.
|
Vector.<ContentElement> — Вектор, содержащий замещенные элементы.
|
Выдает
RangeError — Заданный параметр beginIndex или endIndex находится за пределами диапазона.
| |
ArgumentError — Заданное свойство newElements содержит элементы со значением null .
| |
ArgumentError — Заданное свойство newElements содержит элементы this .
| |
ArgumentError — Заданное свойство newElements содержит элементы, которые не являются известными подклассами ContentElement .
| |
ArgumentError — Заданное свойство newElements содержит элементы, заданные в качестве значения свойства content объекта TextBlock .
| |
ArgumentError — Заданное свойство newElements содержит элементы, которые уже являются членами группы, либо встречаются более раза в elements .
| |
ArgumentError — Если операция должна привести к вложенным вращениям внутри элемента GroupElement .
|
setElements | () | метод |
public function setElements(value:Vector.<ContentElement>):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Устанавливает элементы в группе для содержимого вектора.
Параметры
value:Vector.<ContentElement> |
Выдает
ArgumentError — Заданное value содержит элементы null .
| |
ArgumentError — Заданное value содержит элементы this .
| |
ArgumentError — Заданное value содержит элементы, которые не являются известными подклассами ContentElement .
| |
ArgumentError — Заданное value содержит элементы в виде content , которые не являются известными подклассами TextBlock .
| |
ArgumentError — Заданное value содержит элементы, которые уже являются членами группы, либо встречаются более раза в value .
| |
ArgumentError — Если операция должна привести к вложенным вращениям внутри элемента GroupElement .
|
splitTextElement | () | метод |
public function splitTextElement(elementIndex:int, splitIndex:int):flash.text.engine:TextElement
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Разбивает объект TextElement на два, создавая новый TextElement в указанной позиции.
Параметры
elementIndex:int — Отсчитываемый от нуля индекс положения элемента в группе.
| |
splitIndex:int — Отсчитываемый от нуля индекс положения элемента в TextElement, где будет производиться разбиение. Заданный символ — это первый символ нового TextElement.
|
flash.text.engine:TextElement — Новый элемент, содержащий последнюю часть исходного текстового элемента.
|
Выдает
RangeError — Если индексы elementIndex или charIndex лежат вне диапазона.
| |
ArgumentError — Если элемент по индексу elementIndex не является TextElement.
|
Связанные элементы API
ungroupElements | () | метод |
public function ungroupElements(groupIndex:int):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Разгруппировывает элементы во вложенном GroupElement, который задается с помощью groupIndex
внутри внешнего GroupElement. После выполнения операции разгрупированные элементы заменяют вложенный GroupElement, который становится элементом без родителей со значением null
свойства group
.
Параметры
groupIndex:int — Отсчитываемый от нуля индекс для положения разбиваемой группы.
|
Выдает
RangeError — Если groupIndex вне диапазона.
| |
ArgumentError — Если элемент по индексу groupIndex не является объектом GroupElement.
|
content
текстового блока TextBlock, из которого создаются три строки.
package { import flash.display.Sprite; import flash.display.MovieClip; import flash.text.engine.ContentElement; import flash.text.engine.TextBlock; import flash.text.engine.TextElement; import flash.text.engine.GraphicElement; import flash.text.engine.GroupElement; import flash.text.engine.TextLine; import flash.text.engine.ElementFormat; import flash.text.engine.FontDescription; public class GroupElementExample extends Sprite { public function GroupElementExample():void { var redBox:MovieClip = new MovieClip(); redBox.graphics.beginFill(0xCC0000, 1.0); redBox.graphics.drawRect(0, 0, 20, 20); redBox.graphics.endFill(); var format:ElementFormat = new ElementFormat(); var fontDescription:FontDescription = new FontDescription("Arial"); format.fontSize = 16; format.fontDescription = fontDescription; var str1:String = "This red box is a GraphicElement "; var str2:String = " in the middle of two TextElements, " + " which together make " + "up a GroupElement in a TextBlock that is broken into three lines."; var textElement1:TextElement = new TextElement(str1,format); var graphicElement:GraphicElement = new GraphicElement(redBox,redBox.width,redBox.height, format); var textElement2:TextElement = new TextElement(str2, format); var groupVector:Vector.<ContentElement> = new Vector.<ContentElement>(); groupVector.push(textElement1, graphicElement, textElement2); var groupElement = new GroupElement(groupVector); var textBlock:TextBlock = new TextBlock(); textBlock.content = groupElement; createTextLines(textBlock); } private function createTextLines(textBlock:TextBlock):void { var yPos = 20; var line_length:Number = 450; var textLine:TextLine = textBlock.createTextLine (null, line_length); while (textLine) { addChild(textLine); textLine.x = 15; yPos += textLine.height+8; textLine.y = yPos; textLine = textBlock.createTextLine(textLine, line_length); } } } }
Tue Jun 12 2018, 11:34 AM Z