| Пакет | flash.text.engine |
| Класс | public final class TextLine |
| Наследование | TextLine DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Нельзя создать объект TextLine непосредственно из кода ActionScript. При вызове функции new TextLine(), выдается исключение. Чтобы создать объект TextLine, вызовите метод createTextLine() объекта TextBlock.
Объект TextLine содержит минимальную информацию, необходимую для визуализации его содержимого и для обеспечения интерактивности с помощью некоторых методов, которые описывают свойства атомов строки. Термин «атом» относится к графическим элементам и символам (включая группы объединенных символов), неделимым сущностям в строке.
После завершения обычной отправки событий для строки текста, если она действительна, ее события зеркально отображаются в отправителях событий, заданных в свойствах eventMirror объектов элементов содержимого, которые передаются текстовой строке. Эти объекты записываются в свойстве TextLine.mirrorRegions. События не зеркалируются, если распространение событий завершилось ошибкой или остановлено, или если строка недействительна.
Зеркалирование событий мыши является особым случаем. Поскольку зеркальные области в действительности не являются экранными объекты, для них имитируются события mouseOver и mouseOut. События rollOver и rollOut не имитируются. Все естественным образом возникающие события mouseOver, mouseOut, rollOver и rollOut (в отношении текстовой строки или нижестоящего элемента текстовой строки) игнорируются – их зеркалирование не выполняется.
Исходной точкой объекта текстовой строки является начало базовой линии. Если не задать положение по вертикали (свойство y) для строки, содержащей латинский текст на базовой линии прямого шрифта, только подстрочные элементы литер появляются под верхним краем объекта Sprite, в который добавляется текстовая строка. См. следующий рисунок.
Класс TextLine имеет несколько предков: классы DisplayObjectContainer, InteractiveObject, DisplayObject и EventDispatcher, – от которых он наследует свойства и методы. Следующие унаследованные свойства не применимы к объектам TextLine:
-
contextMenu -
focusRect -
tabChildren -
tabEnabled -
tabIndex
При попытке задать эти свойства текстовый процессор выдает ошибку: IllegalOperationError. Эти свойства можно считывать, но они всегда содержат значения по умолчанию.
Связанные элементы API
| Свойство | Определено | ||
|---|---|---|---|
![]() | accessibilityImplementation : AccessibilityImplementation
Текущая реализация специальных возможностей (AccessibilityImplementation) для данного экземпляра InteractiveObject. | InteractiveObject | |
![]() | accessibilityProperties : AccessibilityProperties
Текущие параметры специальных возможностей для данного экранного объекта. | DisplayObject | |
![]() | alpha : Number
Указывает значение альфа-прозрачности заданного объекта. | DisplayObject | |
| ascent : Number [только для чтения]
Указывает число пикселей от базовой линии до верхней точки самых высоких символов в строке. | TextLine | ||
| atomCount : int [только для чтения]
Число атомов в строке, которое представляет число невидимых элементов, включая пробелы и графические элементы. | TextLine | ||
![]() | blendMode : String
Значение класса BlendMode, задающее режим наложения. | DisplayObject | |
![]() | blendShader : Shader [только для записи]
Задает затенение, используемое при наложении переднего плана на фон. | DisplayObject | |
![]() | cacheAsBitmap : Boolean
При значении true среда выполнения Flash кэширует внутреннее растровое представление экранного объекта. | DisplayObject | |
![]() | cacheAsBitmapMatrix : Matrix
Если задано ненулевое значение, данный объект Matrix определяет способ визуализации экранного объекта, когда свойство cacheAsBitmap имеет значение true. | DisplayObject | |
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
![]() | contextMenu : NativeMenu
Определяет контекстное меню, связанное с данным объектом. | InteractiveObject | |
| descent : Number [только для чтения]
Указывает число пикселей от базовой линии до нижней точки символов с самыми низким выносным элементом в строке. | TextLine | ||
![]() | doubleClickEnabled : Boolean
Определяет, получает ли объект события doubleClick. | InteractiveObject | |
![]() | filters : Array
Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. | DisplayObject | |
![]() | focusRect : Object
Задает отображение прямоугольной рамки индикатора фокуса для данного объекта. | InteractiveObject | |
| hasGraphicElement : Boolean [только для чтения]
Указывает, содержит ли текстовая строка графические элементы. | TextLine | ||
| hasTabs : Boolean [только для чтения]
Указывает, содержит ли текстовая строка табуляцию. | TextLine | ||
![]() | height : Number
Указывает высоту экранного объекта в пикселях. | DisplayObject | |
![]() | loaderInfo : LoaderInfo [только для чтения]
Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. | DisplayObject | |
![]() | mask : DisplayObject
Вызывающий экранный объект маскируется заданным объектом mask. | DisplayObject | |
![]() | metaData : Object
Получает объект метаданных экземпляра DisplayObject, если метаданные хранились вместе с экземпляром этого DisplayObject в SWF-файле через тег PlaceObject4. | DisplayObject | |
| mirrorRegions : Vector.<flash.text.engine:TextLineMirrorRegion> [только для чтения]
Объект Vector содержащий объекты TextLineMirrorRegion, связанные со строкой, или null, если таких не существует. | TextLine | ||
![]() | mouseChildren : Boolean
Определяет, поддерживают ли дочерние объекты события мыши или других устройств пользовательского ввода. | DisplayObjectContainer | |
![]() | mouseEnabled : Boolean
Определяет, получает ли этот объект события мыши или другого пользовательского ввода. | InteractiveObject | |
![]() | mouseX : Number [только для чтения]
Указывает координату x мыши или курсора пользовательского ввода (в пикселях). | DisplayObject | |
![]() | mouseY : Number [только для чтения]
Указывает координату y мыши или курсора пользовательского ввода (в пикселях). | DisplayObject | |
![]() | name : String
Указывает имя экземпляра DisplayObject. | DisplayObject | |
![]() | needsSoftKeyboard : Boolean
Определяет, должна ли отображаться виртуальная клавиатура (программная экранная клавиатура), когда этот экземпляр InteractiveObject получает фокус. | InteractiveObject | |
| nextLine : flash.text.engine:TextLine [только для чтения]
Следующий объект TextLine в TextBlock или null, если текущая строка является последней в блоке или если строка имеет validity TextLineValidity.STATIC. | TextLine | ||
![]() | numChildren : int [только для чтения]
Возвращает число дочерних элементов данного объекта. | DisplayObjectContainer | |
![]() | opaqueBackground : Object
Определяет, является ли экранный объект непрозрачным с определенным цветом фона. | DisplayObject | |
![]() | parent : DisplayObjectContainer [только для чтения]
Указывает объект DisplayObjectContainer, содержащий данный экранный объект. | DisplayObject | |
| previousLine : flash.text.engine:TextLine [только для чтения]
Предыдущий объект TextLine в TextBlock или null, если текущая строка является первой в блоке или если строка имеет действительность TextLineValidity.STATIC. | TextLine | ||
| rawTextLength : int [только для чтения]
Длина необработанного текста в блоке, который стал строкой, включая символы U+FDEF, представляющие графические элементы и концевые пробелы, которые являются частью строки, но не отображаются. | TextLine | ||
![]() | root : DisplayObject [только для чтения]
В случае с экранным объектом в загруженном SWF-файле свойством root является самый верхний экранный объект в части структуры дерева списка отображения, представленной этим SWF-файлом. | DisplayObject | |
![]() | rotation : Number
Указывает поворот экземпляра DisplayObject относительно его исходной ориентации (в градусах). | DisplayObject | |
![]() | rotationX : Number
Обозначает поворот в градусах по оси x экземпляра DisplayObject относительно исходной ориентации по трехмерному вышестоящему контейнеру. | DisplayObject | |
![]() | rotationY : Number
Обозначает угол поворота в градусах по оси у экземпляра DisplayObject относительно исходной ориентации по трехмерному родительскому контейнеру. | DisplayObject | |
![]() | rotationZ : Number
Обозначает поворот в градусах по оси z экземпляра DisplayObject от исходной ориентации относительно трехмерного родительского контейнера. | DisplayObject | |
![]() | scale9Grid : Rectangle
Текущая активная сетка масштабирования. | DisplayObject | |
![]() | scaleX : Number
Указывает горизонтальное масштабирование объекта от точки регистрации (в процентах). | DisplayObject | |
![]() | scaleY : Number
Указывает вертикальное масштабирование объекта от точки регистрации (в процентах). | DisplayObject | |
![]() | scaleZ : Number
Указывает глубину масштабирования объекта (в процентах) относительно точки регистрации этого объекта. | DisplayObject | |
![]() | scrollRect : Rectangle
Прямоугольная область прокрутки экранного объекта. | DisplayObject | |
![]() | softKeyboard : String
Управляет внешним видом программной клавиатуры. | InteractiveObject | |
![]() | softKeyboardInputAreaOfInterest : Rectangle
Определяет область, которая должна оставаться на экране при отображении программной клавиатуры (недоступна в iOS). | InteractiveObject | |
| specifiedWidth : Number [только для чтения]
Ширина, переданная методу TextBlock.createTextLine() при создании строки. | TextLine | ||
![]() | stage : Stage [только для чтения]
Класс Stage экранного объекта. | DisplayObject | |
![]() | tabChildren : Boolean
Определяет, включен ли переход между нижестоящими элементами объекта с помощью клавиши Tab. | DisplayObjectContainer | |
![]() | tabEnabled : Boolean
Определяет, включен ли переход к этому объекту с помощью клавиши Tab. | InteractiveObject | |
![]() | tabIndex : int
Задает последовательность перехода между объектами в SWF-файле. | InteractiveObject | |
| textBlock : flash.text.engine:TextBlock [только для чтения]
Объект TextBlock, содержащий эту строку текста, или 0, если для строки задана достоверность TextLineValidity.STATIC, то есть связь между строкой и TextBlock разорвана. | TextLine | ||
| textBlockBeginIndex : int [только для чтения]
Индекс первого символа в строка в необработанном тексте блока. | TextLine | ||
| textHeight : Number [только для чтения]
Логическая высота текстовой строки, равная сумме значений ascent и descent. | TextLine | ||
![]() | textSnapshot : flash.text:TextSnapshot [только для чтения]
Возвращает объект TextSnapshot для данного экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
| textWidth : Number [только для чтения]
Логическая ширина текстовой строки, то есть ширина, используемая текстовым процессором для раскладки строки. | TextLine | ||
| totalAscent : Number [только для чтения]
Указывает число пикселов от базовой линии до верхней точки самых высоких символов или графики в строке. | TextLine | ||
| totalDescent : Number [только для чтения]
Указывает число пикселов от базовой линии до нижней точки символов с самым низким выносным элементом или самой низкой графики в строке. | TextLine | ||
| totalHeight : Number [только для чтения]
Общая логическая высота текстовой строки, которая равна сумме totalAscent + totalDescent. | TextLine | ||
![]() | transform : flash.geom:Transform
Объект со свойствами, относящимися к матрице, преобразованию цвета и пиксельным границам экранного объекта. | DisplayObject | |
| unjustifiedTextWidth : Number [только для чтения]
Ширина строки, если она не выровнена. | TextLine | ||
| userData : *
Дает возможность приложению связать произвольные данные с текстовой строкой. | TextLine | ||
| validity : String
Указывает текущую валидность текстовой строки. | TextLine | ||
![]() | visible : Boolean
Определяет видимость экранного объекта. | DisplayObject | |
![]() | width : Number
Указывает ширину экранного объекта в пикселях. | DisplayObject | |
![]() | x : Number
Указывает координату x экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | DisplayObject | |
![]() | y : Number
Указывает координату y экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. | DisplayObject | |
![]() | z : Number
Указывает положение по оси z экземпляра DisplayObject относительно трехмерного родительского контейнера. | DisplayObject | |
| Метод | Определено | ||
|---|---|---|---|
![]() |
Добавляет экземпляр дочернего элемента DisplayObject к экземпляру DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Добавляет экземпляр дочернего элемента DisplayObject к экземпляру DisplayObjectContainer. | DisplayObjectContainer | |
![]() | addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | |
![]() |
Показывает, могут ли ограничения безопасности привести к пропуску каких-либо экранных объектов в списке, возвращаемом в результате вызова метода DisplayObjectContainer.getObjectsUnderPoint() с заданной точкой point. | DisplayObjectContainer | |
![]() |
Определяет, является ли указанный объект отображения дочерним объектом экземпляра DisplayObjectContainer или самим экземпляром. | DisplayObjectContainer | |
![]() |
Посылает событие в поток событий. | EventDispatcher | |
Выдает базовое содержимое TextLine в виде строки XML. | TextLine | ||
Устарело с Flash Player 10.1В настоящее время он не работает.
Этот метод считается устаревшим и не имеет никакого эффекта. | TextLine | ||
Определяет двусторонний уровень атома по заданному индексу. | TextLine | ||
Определяет границы атома по указанному индексу, связанному с текстовой строкой. | TextLine | ||
Определяет центр атома, согласно изменениями, вдоль опорной линии по заданному индексу. | TextLine | ||
Определяет график атома по заданному индексу или null, если атом является символом. | TextLine | ||
Возвращает индекс атома, содержащего символ, заданный параметром charIndex или -1, если символ не входит ни в один атом в строке. | TextLine | ||
Возвращает индекс атома в точке, заданной параметрами x и y или -1, если в этой точке нет атома. | TextLine | ||
Определяет индекс начала текстового блока атома по заданному индексу. | TextLine | ||
Определяет индекс конца текстового блока атома по заданному индексу. | TextLine | ||
Определяет вращение атома по заданному индексу. | TextLine | ||
Указывает, лежит ли граница слова слева от атома по заданному индексу. | TextLine | ||
Получает положение заданной базовой линии относительно TextBlock.baselineZero. | TextLine | ||
![]() |
Возвращает прямоугольник, определяющий область объекта отображения, которая относится к системе координат объекта targetCoordinateSpace. | DisplayObject | |
![]() |
Возвращает экземпляр дочернего экранного объекта, существующий в заданной позиции индекса. | DisplayObjectContainer | |
![]() |
Возвращает экземпляр дочернего экранного объекта с заданным именем. | DisplayObjectContainer | |
![]() |
Возвращает позицию индекса для экземпляра DisplayObject child. | DisplayObjectContainer | |
Возвращает первый TextLineMirrorRegion в строке, чье свойство mirror совпадает с параметром mirror или null, если нет совпадений. | TextLine | ||
![]() |
Возвращает массив объектов, расположенных ниже указанной позиции и являющихся дочерними объектами любого уровня для данного экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Возвращает прямоугольник, определяющий границу объекта отображения по системе координат, определенной параметром targetCoordinateSpace за исключением линий фигур. | DisplayObject | |
![]() |
Преобразует объект Point из координат рабочей области (глобальных) в координаты отображаемого объекта (локальные). | DisplayObject | |
![]() |
Преобразует двумерный объект Point из координат рабочей области (глобальных) в координаты экранного трехмерного объекта (локальные). | DisplayObject | |
![]() |
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Вычисляет ограничительную рамку экранного объекта, чтобы определить, не перекрывает и не пересекает ли она ограничительную рамку экранного объекта obj. | DisplayObject | |
![]() |
Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x и y, или пересекает ее. | DisplayObject | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Преобразует трехмерный объект point из координат трехмерного экранного объекта (локальных) в двухмерный объект point с координатами рабочей области (глобальными). | DisplayObject | |
![]() |
Преобразует объект Point из координат экранного объекта (локальных) в координаты рабочей области (глобальные). | DisplayObject | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Удаляет заданный объект child DisplayObject из списка дочерних элементов экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Удаляет дочерний DisplayObject из заданной позиции индекса в списке дочерних элементов DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Удаляет все дочерние экземпляры DisplayObject из списка дочерних элементов экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | |
![]() |
Вызывает виртуальную клавиатуру. | InteractiveObject | |
![]() |
Изменяет положение существующего дочернего элемента в DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Рекурсивно останавливает выполнение временной шкалы всех фрагментов MovieClip, размещенных в корне этого объекта. | DisplayObjectContainer | |
![]() |
Меняет местами (в порядке «от начала к концу») два заданных дочерних объекта. | DisplayObjectContainer | |
![]() |
Меняет местами (в порядке «от начала к концу») дочерние объекты, расположенные в двух заданных позициях индекса в списке дочерних элементов. | DisplayObjectContainer | |
![]() |
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
![]() |
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher | |
| Константа | Определено | ||
|---|---|---|---|
| MAX_LINE_WIDTH : int = 1000000 [статические]
Максимальная запрашиваемая ширина строки текста в пикселях. | TextLine | ||
ascent | свойство |
ascent:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указывает число пикселей от базовой линии до верхней точки самых высоких символов в строке. Для объекта TextLine, содержащего только графический элемент, ascent имеет значение 0.
Реализация
public function get ascent():NumberatomCount | свойство |
atomCount:int [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Число атомов в строке, которое представляет число невидимых элементов, включая пробелы и графические элементы.
Реализация
public function get atomCount():intВыдает
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
descent | свойство |
descent:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указывает число пикселей от базовой линии до нижней точки символов с самыми низким выносным элементом в строке. Для объекта TextLine, содержащего только графический элемент, descent имеет значение 0.
Реализация
public function get descent():NumberhasGraphicElement | свойство |
hasTabs | свойство |
mirrorRegions | свойство |
mirrorRegions:Vector.<flash.text.engine:TextLineMirrorRegion> [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Объект Vector содержащий объекты TextLineMirrorRegion, связанные со строкой, или null, если таких не существует.
Реализация
public function get mirrorRegions():Vector.<flash.text.engine:TextLineMirrorRegion>Связанные элементы API
nextLine | свойство |
nextLine:flash.text.engine:TextLine [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Следующий объект TextLine в TextBlock или null, если текущая строка является последней в блоке или если строка имеет действительность TextLineValidity.STATIC.
Реализация
public function get nextLine():flash.text.engine:TextLineСвязанные элементы API
previousLine | свойство |
previousLine:flash.text.engine:TextLine [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Предыдущий объект TextLine в TextBlock или null, если текущая строка является первой в блоке или если строка имеет действительность TextLineValidity.STATIC.
Реализация
public function get previousLine():flash.text.engine:TextLineСвязанные элементы API
rawTextLength | свойство |
rawTextLength:int [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Длина необработанного текста в блоке, который стал строкой, включая символы U+FDEF, представляющие графические элементы и концевые пробелы, которые являются частью строки, но не отображаются.
Реализация
public function get rawTextLength():intСвязанные элементы API
specifiedWidth | свойство |
specifiedWidth:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Ширина, переданная методу TextBlock.createTextLine() при создании строки. Это значение помогает определить, требует ли внесенное изменения повторной разбивки строки.
Реализация
public function get specifiedWidth():NumberСвязанные элементы API
textBlock | свойство |
textBlock:flash.text.engine:TextBlock [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Объект TextBlock, содержащий эту строку текста, или 0, если для строки задана достоверность TextLineValidity.STATIC, то есть связь между строкой и TextBlock разорвана.
Реализация
public function get textBlock():flash.text.engine:TextBlockСвязанные элементы API
textBlockBeginIndex | свойство |
textHeight | свойство |
textHeight:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Логическая высота текстовой строки, равная сумме значений ascent и descent. Чтобы получить фактическую высоту, используйте унаследованное свойство height.
Это значение рассчитывается по разнице между базовыми строками, окружающими строку, — идеографическими верхней и нижней, либо верхним выносным элементом и нижним выносным элементом в зависимости от того, является TextBlock.baselineZero идеографическим или нет. Графические элементы на учитываются при расчете этих базовых строк.
Реализация
public function get textHeight():NumberСвязанные элементы API
textWidth | свойство |
textWidth:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Логическая ширина текстовой строки, то есть ширина, используемая текстовым процессором для раскладки строки. Используйте унаследованное свойство width, чтобы получить фактическую ширину ограничительного прямоугольника всех нарисованных пикселей.
Реализация
public function get textWidth():NumberСвязанные элементы API
Пример ( Использование этого примера )
specifiedWidth, textWidth и width. Получены следующие результаты отслеживания:
- specifiedWidth: 500
- textWidth: 268.9921875
- width: 269
- specifiedWidth: 500
- textWidth: 267,52734375
- width: 267,55
package {
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextElement;
import flash.text.engine.TextLine;
import flash.text.engine.FontDescription;
import flash.text.engine.ElementFormat;
import flash.text.engine.FontPosture;
public class TextLine_textWidthExample extends Sprite {
public function TextLine_textWidthExample() {
var str:String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, ";
var yPos:Number = 20;
var fontDescription:FontDescription = new FontDescription();
var textBlock:TextBlock = new TextBlock();
fontDescription.fontPosture = FontPosture.NORMAL;
var format:ElementFormat = new ElementFormat(fontDescription, 12);
var textElement:TextElement = new TextElement(str, format);
textBlock.content = textElement;
createLine(textBlock, yPos);
var fontDescriptionItalic = fontDescription.clone();
fontDescriptionItalic.fontPosture = FontPosture.ITALIC;
var formatItalic = new ElementFormat(fontDescriptionItalic, 12);
textElement = new TextElement(str, formatItalic);
textBlock.content = textElement;
createLine(textBlock, yPos + 20);
}
private function createLine(textBlock:TextBlock, yPos:Number):void {
var textLine:TextLine = textBlock.createTextLine (null, 500);
trace("specifiedWidth is: " + textLine.specifiedWidth);
trace("textWidth is: " + textLine.textWidth);
trace("width is: " + textLine.width);
addChild(textLine);
textLine.x = 15;
textLine.y = yPos;
}
}
}
totalAscent | свойство |
totalDescent | свойство |
totalDescent:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 10.2 |
Указывает число пикселов от базовой линии до нижней точки символов с самым низким выносным элементом или самой низкой графики в строке.
Реализация
public function get totalDescent():NumbertotalHeight | свойство |
unjustifiedTextWidth | свойство |
unjustifiedTextWidth:Number [только для чтения] | Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Ширина строки, если она не выровнена. Для невыровненного текста это значение совпадает с textWidth. Для выровненного текста это значение представляет длину, которую бы строка имела без выравнивания, а textWidth представляет фактическую ширину строки. Например, когда следующая строка выравнивается и передается методу TextBlock.createTextLine() с шириной 500, ее фактическая ширина составляет 500, а ширина без выравнивания — 268,9921875.
Реализация
public function get unjustifiedTextWidth():NumberСвязанные элементы API
Пример ( Использование этого примера )
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextElement;
import flash.text.engine.TextLine;
import flash.text.engine.FontDescription;
import flash.text.engine.ElementFormat;
import flash.text.engine.SpaceJustifier;
import flash.text.engine.LineJustification;
var str:String = "Lorem ipsum dolor sit amet, consectetur adipisicing elit, ";
var fontDescription:FontDescription = new FontDescription();
var textBlock:TextBlock = new TextBlock();
var format:ElementFormat = new ElementFormat(fontDescription, 12);
var textElement:TextElement = new TextElement(str, format);
textBlock.content = textElement;
var spaceJustifier:SpaceJustifier = new SpaceJustifier("en", LineJustification.ALL_INCLUDING_LAST);
textBlock.textJustifier = spaceJustifier;
var textLine:TextLine = textBlock.createTextLine(null, 500);
textLine.y = 20;
addChild(textLine);
trace("textWidth value is: " + textLine.textWidth); // 500.00244140625
trace("unjustifiedTextWidth is: " + textLine.unjustifiedTextWidth); // 268.9921875
userData | свойство |
public var userData:*| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Дает возможность приложению связать произвольные данные с текстовой строкой.
validity | свойство |
validity:String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указывает текущую действительность текстовой строки. Значения для этого свойства находятся в элементах класса TextLineValidity. Это свойство должно задаваться по следующим правилам.
Строке присваивается значение USER_INVALID, если действительность имеет строковое значение, не являющееся элементом класса TextLineValidity. USER_INVALID — это абстракция, используемая здесь для представления подобных значений.
При изменении содержимого объекта TextBlock среда выполнения Flash помечает затронутые текстовые строки, а также предшествующую и следующую строки как INVALID. Предшествующая строка должна помечаться как недействительная, когда изменение позволяет ей включить в себя часть содержимого, которая раньше находилась в первой затронутой строке.
Вновь разбитые строки всегда помечаются как VALID. Среда выполнения Flash может изменять следующие строки с VALID на POSSIBLY_INVALID или INVALID. Он может менять строки с POSSIBLY_INVALID на VALID, если разрывы строк совпадают, или на INVALID, если нет.
Код приложения может изменить строки с VALID на INVALID или USER_INVALID, а также с USER_INVALID на VALID. Код приложения не может помечать строки как POSSIBLY_INVALID.
Код приложения может пометить любую строку как STATIC. В результате этого элемент block получает значение null. Все графические элементы в текстовой строке с пометкой STATIC удаляются, и для них восстанавливаются родительские отношения, если они являются частью новой текстовой строки, оторванной от текстового блока, к которому сначала принадлежала исходная строка STATIC.
Реализация
public function get validity():String public function set validity(value:String):voidВыдает
ArgumentError — Если текущее значение является TextLineValidity.STATIC.
| |
ArgumentError — Если текущее значение является TextLineValidity.INVALID, а новое значение не является TextValidity.STATIC.
| |
ArgumentError — Если текущее значение является TextLineValidity.POSSIBLY_INVALID, а новое значение является TextLineValidity.VALID.
| |
ArgumentError — Если новое значение является TextLineValidity.POSSIBLY_INVALID.
|
Связанные элементы API
dump | () | метод |
public function dump():String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5 |
Выдает базовое содержимое TextLine в виде строки XML. Это может пригодиться при автоматическом тестировании, так как включает сведения о тексте, форматировании и компоновке.
Следующий код описывает вывод.
[LINE] <line ascent=[Number] descent=[Number] rotation=[int]> <elements> [0-N ELEMENT] </elements> <clusters> [0-N CLUSTER] </clusters> </line> [ELEMENT] <glyph isEmbedded=[Boolean] fontName=[String] isBold=[Boolean] isItalic=[Boolean] gid=[int] pointSize=[Number] x=[Number] y=[Number] rotation=[int]/> or <graphic child=[int] x=[Number] y=[Number] rotation=[int]/> or <embeddedRun x=[Number] y=[Number]> [LINE] </embeddedRun> [CLUSTER] <cluster xLeft=[Number] xCenter=[Number] xRight=[Number] cursorOnLeft=[Boolean] cursorOnRight=[Boolean] wordBoundaryOnLeft=[Boolean] wordBoundaryOnRight=[Boolean]/>
Примечание. Содержимое и формат выхода этого метода могут в будущем измениться. Adobe не гарантирует обратной совместимости данного метода.
ВозвращаетString |
Связанные элементы API
flushAtomData | () | метод |
public function flushAtomData():void| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Этот метод не рекомендуется и не имеет никакого эффекта. Данные атома сжаты и не влияют на эффективность управления памятью.
Связанные элементы API
getAtomBidiLevel | () | метод |
public function getAtomBidiLevel(atomIndex:int):int| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет двусторонний уровень атома по заданному индексу. Определяется комбинацией TextBlock.bidiLevel и двунаправленных свойств Юникод для символов, образующих строку.
Например, если текстовый блок начинается с текста на иврите, необходимо задать для TextBlock.bidiLevel значение 1, установив по умолчанию направление справа налево. Если в тексте имеется цитата на английском (слева направо), для этого текста AtomBidiLevel имеет значение 2. Если в английском тексте включен фрагмент на арабском (справа налево), то для него AtomBidiLevel имеет значение 3. Если в арабском фрагменте встречается число (слева направо), AtomBidiLevel для числа имеет значение 4. Не имеет значения, в какой строке оказываются атомы. Атомы иврита имеют AtomBidiLevel 1, атомы английского — AtomBidiLevel 2, атомы арабского — AtomBidiLevel 3, а атомы чисел — AtomBidiLevel 4.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
int — Двунаправленный уровень атома по индексу atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
Связанные элементы API
getAtomBounds | () | метод |
public function getAtomBounds(atomIndex:int):Rectangle| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет границы атома по указанному индексу, связанному с текстовой строкой. Границы заданного атома состоят из положения по горизонтали (x) в строке, положения по вертикали (y) в строке, ширины (w) и высоты (h). Все значения в пикселях.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
Rectangle — Границы атома по индексу atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomCenter | () | метод |
public function getAtomCenter(atomIndex:int):Number| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет центр атома, согласно изменениями, вдоль опорной линии по заданному индексу.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
Number — Центр атома по индексу atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomGraphic | () | метод |
public function getAtomGraphic(atomIndex:int):DisplayObject| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет график атома по заданному индексу или null, если атом является символом.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
DisplayObject — График атома по индексу atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomIndexAtCharIndex | () | метод |
public function getAtomIndexAtCharIndex(charIndex:int):int| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает индекс атома, содержащего символ, заданный параметром charIndex или -1, если символ не входит ни в один атом в строке. Параметр charIndex относится ко всему содержимому текстового блока, в который входит строка.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первый символ — 0, второй символ — 1 и т. д.).
|
int — Индекс атома, содержащего символ по индексу charIndex. Возвращает -1, если символ не входит ни в один атом строки.
|
Выдает
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomIndexAtPoint | () | метод |
public function getAtomIndexAtPoint(stageX:Number, stageY:Number):int| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает индекс атома в точке, заданной параметрами x и y или -1, если в этой точке нет атома.
Этот метод получает глобальные координаты, чтобы его можно было легко использовать со свойствами MouseEvent.stageX и MouseEvent.stageY.
Параметры
stageX:Number — Глобальная координата x тестируемой точки.
| |
stageY:Number — Глобальная координата y тестируемой точки.
|
int — Индекс атома под точкой. Возвращает -1, если точка не переходит ни один из атомов.
|
Выдает
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomTextBlockBeginIndex | () | метод |
public function getAtomTextBlockBeginIndex(atomIndex:int):int| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет индекс начала текстового блока атома по заданному индексу.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
int — Индекс начала текстового блока атома atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomTextBlockEndIndex | () | метод |
public function getAtomTextBlockEndIndex(atomIndex:int):int| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет индекс конца текстового блока атома по заданному индексу.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
int — Индекс конца текстового блока атома atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getAtomTextRotation | () | метод |
public function getAtomTextRotation(atomIndex:int):String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Определяет вращение атома по заданному индексу. Для этого свойства используются константы TextRotation. Поворот атома является суммой поворотов элемента и строки. Основным назначением является настройка ориентации каретки (курсора) при взаимодействии с объектом TextLine.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
String — Вращение атома по индексу atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
Связанные элементы API
getAtomWordBoundaryOnLeft | () | метод |
public function getAtomWordBoundaryOnLeft(atomIndex:int):Boolean| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Указывает, лежит ли граница слова слева от атома по заданному индексу. Границы слова определяются на основе свойств Unicode символов, переданных строке.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т. д.).
|
Boolean — Логическое значение, указывающее, находится ли граница слова слева от атома в atomIndex.
|
Выдает
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — validity строки является TextLineValidity.STATIC.
|
getBaselinePosition | () | метод |
public function getBaselinePosition(baseline:String):Number| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Получает положение заданной базовой линии относительно TextBlock.baselineZero.
Параметры
baseline:String — Базовая линия, относительно которой задано положение. Используйте значения TextBaseline.
|
Number — Положение заданной базовой линии относительно TextBlock.baselineZero.
|
Выдает
ArgumentError — Заданный языковой стандарт baseline не является элементом TextBaseline.
|
Связанные элементы API
getMirrorRegion | () | метод |
public function getMirrorRegion(mirror:EventDispatcher):flash.text.engine:TextLineMirrorRegion| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Возвращает первый TextLineMirrorRegion в строке, чье свойство mirror совпадает с параметром mirror или null, если нет совпадений.
Даже один TextElement может произвести несколько объектов TextLineMirrorRegion на одной или более строках в зависимости от уровня двунаправленности и разрывов строк. Свойства nextRegion и previousRegion связывают все зеркальные области, генерируемые одним элементом текста.
Параметры
mirror:EventDispatcher — Зеркальный объект EventDispatcher для поиска.
|
flash.text.engine:TextLineMirrorRegion — Первый TextLineMirrorRegion в строке, чье свойство mirror совпадает с заданным значением или null, если нет совпадений.
|
Связанные элементы API
MAX_LINE_WIDTH | Константа |
public static const MAX_LINE_WIDTH:int = 1000000| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | Flash Player 10, AIR 1.5, Flash Lite 4 |
Максимальная запрашиваемая ширина строки текста в пикселях. Метод TextBlock.createTextLine() использует эту константу в качестве значения по умолчанию для параметра width, если не задано другое значение.
Связанные элементы API
getAtomBounds().
- Добавьте компонент NumericStepper в библиотеку.
- Сохраните этот код под именем TextLineExample.as в том же каталоге, где и FLA-файл.
- В окне «Свойства» FLA-файла задайте класс TextLineExample.
package {
import flash.display.Sprite;
import flash.text.engine.TextBlock;
import flash.text.engine.TextElement;
import flash.text.engine.TextLine;
import flash.text.engine.ElementFormat;
import flash.text.engine.FontDescription;
import flash.text.engine.FontPosture;
import flash.text.engine.FontWeight;
import fl.controls.NumericStepper;
import flash.events.Event;
import flash.geom.Rectangle;
public class TextLineExample extends Sprite {
private var atomStepper:NumericStepper = new NumericStepper();
private var atomDataContainer:Sprite;
private var fontDescriptionItalic:FontDescription = new FontDescription("Arial", FontWeight.NORMAL, FontPosture.ITALIC);
private var fontDescriptionNormal:FontDescription = new FontDescription("Arial", FontWeight.NORMAL , FontPosture.NORMAL);
private var textBlock:TextBlock = new TextBlock();
private var textLine:TextLine;
public function TextLineExample():void {
var myText:String = "I am a TextElement, created from a String and assigned " +
"to the content property of a TextBlock. From the text block, " +
"the createTextLine() method created these lines, 300 pixels wide, " +
"for display." ;
atomStepper.minimum = 0;
atomStepper.value = 0;
atomStepper.width = 50;
addChild(atomStepper);
atomStepper.x = 20;
atomStepper.y = 120;
atomStepper.addEventListener(Event.CHANGE, nsChange);
var directions:String = "Click up / down arrows to frame atoms in text block above.";
var formatItalic:ElementFormat = new ElementFormat(fontDescriptionItalic);
formatItalic.fontSize = 12;
var textElement1:TextElement = new TextElement(directions, formatItalic);
textBlock.content = textElement1;
createLines(textBlock, 15, 160, 400, this);
var formatNormal:ElementFormat = new ElementFormat(fontDescriptionNormal);
formatNormal.fontSize = 16;
var textElement2:TextElement = new TextElement(myText, formatNormal);
textBlock.content = textElement2;
createLines(textBlock, 15.0, 20.0, 300, this);
textLine = textBlock.firstLine;
atomStepper.maximum = textLine.atomCount - 1;
showAtom(textLine, 0);
}
private function nsChange(event:Event):void
{
removeAtom(textLine);
if (atomStepper.value == textLine.atomCount - 1)
{
if(textLine != textBlock.lastLine)
{
textLine = textLine.nextLine;
atomStepper.maximum = textLine.atomCount - 1;
atomStepper.value = 0;
}
}
showAtom(textLine, atomStepper.value);
}
private function createLines(textBlock, startX, startY, width, container)
{
var textLine:TextLine = textBlock.createTextLine (null, width);
while (textLine)
{
textLine.x = startX;
textLine.y = startY;
startY += textLine.height + 2;
container.addChild(textLine);
textLine = textBlock.createTextLine (textLine, width);
}
}
private function showAtom(textLine, i):void
{
var box:Sprite = new Sprite();
var mcGraphics = box.graphics;
var bounds:Rectangle = textLine.getAtomBounds(i);
mcGraphics.lineStyle(1, 0xFF0000, 1.0);
mcGraphics.drawRect(bounds.left, bounds.top, bounds.width, bounds.height);
textLine.userData = textLine.addChild(box);
displayAtomData(textLine,i);
}
private function displayAtomData(textLine, i)
{
if(atomDataContainer != null)
removeChild(atomDataContainer);
atomDataContainer=new Sprite();
var format = new ElementFormat(fontDescriptionNormal);
format.color = 0x00000FF;
var n:int = 0;
var nxtY:Number = 0;
var atomInfo:String = "value of getAtomBidiLevel() is: " + textLine.getAtomBidiLevel(i)+"\n"
+"value of getAtomCenter() is: " + textLine.getAtomCenter(i)+"\n"
+"value of getAtomIndexAtCharIndex() is: " + textLine.getAtomIndexAtCharIndex(i)+"\n"
+"value of getAtomTextBlockBeginIndex() is: " + textLine.getAtomTextBlockBeginIndex(i)+"\n"
+"value of getAtomTextBlockEndIndex() is: " + textLine.getAtomTextBlockEndIndex(i)+"\n"
+"value of getAtomTextRotation() is: " + textLine.getAtomTextRotation(i)+"\n";
var atomtextBlock:TextBlock = new TextBlock();
var textElement3:TextElement = new TextElement(atomInfo, format);
atomtextBlock.content = textElement3;
createLines(atomtextBlock,20,200,500, atomDataContainer)
addChild(atomDataContainer);
}
private function removeAtom(textLine):void
{
textLine.removeChild(textLine.userData);
}
}
}
Tue Jun 12 2018, 11:34 AM Z
Скрыть унаследованные общедоступные свойства
Показать унаследованные общедоступные свойства