Пакет | flash.text.engine |
Класс | public final class TextLine |
Наследование | TextLine ![]() ![]() ![]() ![]() ![]() |
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Нельзя создать объект TextLine непосредственно из кода ActionScript. При вызове функции new TextLine ()
, выдается исключение. Чтобы создать объект TextLine, вызовите метод createTextLine()
объекта TextBlock.
Объект TextLine включает минимальную информацию, необходимую для визуализации его содержимого. Дополнительные сведения, полезные для интерактивности, можно получить с помощью методов, описывающих свойства атомов строки. Термин "атом" относится к графическим элементам и символам (включая группы объединенных символов), неделимым сущностям в строке. Важно помнить, что проигрыватель не создает и не хранит данных, требуемых для этих методов, пока они не будут вызваны. Во избежание перегрузки памяти атомарные данные следует создавать только в случае необходимости. Если больше нет необходимости в атомарных данных, вызовите метод flushAtomData()
, чтобы сделать их доступными для сбора мусора.
Следующие методы и свойства генерируют атомарные данные, если они не существуют.
atomCount
getAtomBidiLevel()
getAtomBounds()
getAtomCenter()
getAtomIndexAtCharIndex()
getAtomIndexAtPoint()
getAtomGraphic()
getAtomTextBlockBeginIndex()
getAtomTextBlockEndIndex()
getAtomTextRotation()
getAtomWordBoundaryOnLeft()
После завершения обычной отправки событий для строки текста, если она действительна, ее события зеркально отображаются в отправителях событий, заданных в свойствах eventMirror
объектов элементов содержимого, которые передаются текстовой строке. Эти объекты записываются в свойстве TextLine.mirrorRegions
. События текстовой строки не отображаются зеркально, если распространение событий завершилось ошибкой или остановлено, или если строка недействительна. События мыши отправляются, только если координаты мыши находятся в пределах области зеркала. Все остальные события отправляются всем зеркалам в строке.
Исходной точкой объекта текстовой строки является начало базовой линии. Если не задать положение по вертикали (свойство y
) для строки, содержащей латинский текст на базовой линии прямого шрифта, только подстрочные элементы литер появляются под верхним краем объекта Sprite, в который добавляется текстовая строка. См. следующий рисунок.
Класс TextLine имеет несколько предков: классы DisplayObjectContainer, InteractiveObject, DisplayObject и EventDispatcher, — от которых он наследует свойства и методы. Следующие унаследованные свойства не применимы к объектам TextLine:
contextMenu
focusRect
tabChildren
tabEnabled
tabIndex
transform
См. также
Свойство | Определено | ||
---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
Текущие параметры специальных возможностей для данного экранного объекта. | DisplayObject | |
![]() | alpha : Number
Указывает значение альфа-прозрачности заданного объекта. | DisplayObject | |
ascent : Number [только для чтения]
Указывает число пикселов от базовой линии до верхней точки самых высоких символов в строке. | TextLine | ||
atomCount : int [только для чтения]
Число атомов в строке, которое представляет число невидимых элементов, включая пробелы и графические элементы. | TextLine | ||
![]() | blendMode : String
Значение класса BlendMode, задающее режим наложения. | DisplayObject | |
![]() | blendShader : Shader [только для записи]
Задает затенение, используемое при наложении переднего плана на фон. | DisplayObject | |
![]() | cacheAsBitmap : Boolean
При значении true проигрыватель Flash Player кэширует внутреннее растровое представление экранного объекта. | DisplayObject | |
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
![]() | contextMenu : ContextMenu
Определяет контекстное меню, связанное с данным объектом. | InteractiveObject | |
descent : Number [только для чтения]
Указывает число пикселов от базовой линии до нижней точки символов с самыми низким выносным элементом в строке. | TextLine | ||
![]() | doubleClickEnabled : Boolean
Определяет, получает ли объект события doubleClick. | InteractiveObject | |
![]() | filters : Array
Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. | DisplayObject | |
![]() | focusRect : Object
Задает отображение прямоугольной рамки индикатора фокуса для данного объекта. | InteractiveObject | |
hasGraphicElement : Boolean [только для чтения]
Указывает, содержит ли текстовая строка графические элементы. | TextLine | ||
![]() | height : Number
Указывает высоту экранного объекта в пикселах. | DisplayObject | |
![]() | loaderInfo : LoaderInfo [только для чтения]
Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. | DisplayObject | |
![]() | mask : DisplayObject
Вызывающий экранный объект маскируется заданным объектом mask. | DisplayObject | |
mirrorRegions : Vector [только для чтения]
Объект Vector содержащий объекты TextLineMirrorRegion, связанные со строкой, или null, если таких не существует. | TextLine | ||
![]() | mouseChildren : Boolean
Определяет, включен ли переход между потомками объекта с помощью мыши. | DisplayObjectContainer | |
![]() | mouseEnabled : Boolean
Определяет, получает ли этот объект сообщения мыши. | InteractiveObject | |
![]() | mouseX : Number [только для чтения]
Указывает координату x положения курсора мыши (в пикселах). | DisplayObject | |
![]() | mouseY : Number [только для чтения]
Указывает координату y положения курсора мыши (в пикселах). | DisplayObject | |
![]() | name : String
Указывает имя экземпляра DisplayObject. | DisplayObject | |
nextLine : TextLine [только для чтения]
Следующий объект TextLine в TextBlock или "null", если текущая строка является последней в блоке или если строка имеет валидность TextLineValidity.STATIC. | TextLine | ||
![]() | numChildren : int [только для чтения]
Возвращает число потомков данного объекта. | DisplayObjectContainer | |
![]() | opaqueBackground : Object
Определяет, является ли экранный объект непрозрачным с определенным цветом фона. | DisplayObject | |
![]() | parent : DisplayObjectContainer [только для чтения]
Указывает объект DisplayObjectContainer, содержащий данный экранный объект. | DisplayObject | |
previousLine : TextLine [только для чтения]
Предыдущий объект TextLine в TextBlock или "null", если текущая строка является первой в блоке или если строка имеет валидность TextLineValidity.STATIC. | TextLine | ||
![]() | prototype : Object [статические]
Ссылка на модель объекта класса или функции. | Object | |
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 | |
specifiedWidth : Number [только для чтения]
Ширина, переданная методу TextBlock.createTextLine() при создании строки. | TextLine | ||
![]() | stage : Stage [только для чтения]
Класс Stage экранного объекта. | DisplayObject | |
![]() | tabChildren : Boolean
Определяет, включен ли переход между потомками объекта с помощью клавиши Tab. | DisplayObjectContainer | |
![]() | tabEnabled : Boolean
Определяет, включен ли этот объект в последовательность перехода с помощью клавиши Tab. | InteractiveObject | |
![]() | tabIndex : int
Задает последовательность перехода между объектами в SWF-файле. | InteractiveObject | |
textBlock : TextBlock [только для чтения]
Объект TextBlock, содержащий эту текстовую строку, или 0, если она имеет валидность TextLineValidity.STATIC. | TextLine | ||
textBlockBeginIndex : int [только для чтения]
Индекс первого символа в строка в необработанном тексте блока. | TextLine | ||
textHeight : Number [только для чтения]
Логическая высота текстовой строки, равная сумме значений ascent и descent. | TextLine | ||
![]() | textSnapshot : TextSnapshot [только для чтения]
Возвращает объект TextSnapshot для данного экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
textWidth : Number [только для чтения]
Логическая ширина текстовой строки, то есть ширина, используемая текстовым процессором для раскладки строки. | TextLine | ||
![]() | transform : 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() с заданной точкой. | DisplayObjectContainer | |
![]() |
Определяет, является ли заданный экранный объект дочерним объектом экземпляра DisplayObjectContainer или самим экземпляром. | DisplayObjectContainer | |
![]() |
Передает событие в поток событий. | EventDispatcher | |
Выдает базовое содержимое TextLine в виде строки XML. | TextLine | ||
![]() | DisplayObject | ||
Освобождает атомные данные строки для удаления. | TextLine | ||
Определяет двусторонний уровень атома по заданному индексу. | TextLine | ||
Определяет границы атома по указанному индексу, связанному с текстовой строкой. | TextLine | ||
Определяет центр атома, согласно изменениями, вдоль опорной линии по заданному индексу. | TextLine | ||
Определяет график атома по заданному индексу или null, если атом — это символ. | TextLine | ||
Возвращает индекс атома, содержащего символ, заданный параметром charIndex или -1, если символ не входит ни в один атом в строке. | TextLine | ||
Возвращает индекс атома в точке, заданной параметрами х и у или -1, если в этой точке нет атома. | TextLine | ||
Определяет индекс начала текстового блока атома по заданному индексу. | TextLine | ||
Определяет индекс конца текстового блока атома по заданному индексу. | TextLine | ||
Определяет вращение атома по заданному индексу. | TextLine | ||
Указывает, лежит ли граница слова слева от атома по заданному индексу. | TextLine | ||
Определяет положение заданной базовой линии относительно TextBlock.baselineZero. | TextLine | ||
![]() |
Возвращает прямоугольник, определяющий область экранного объекта, которая относится к системе координат объекта targetCoordinateSpace. | DisplayObject | |
![]() |
Возвращает экземпляр дочернего экранного объекта, существующий в заданной позиции индекса. | DisplayObjectContainer | |
![]() |
Возвращает экземпляр дочернего экранного объекта с заданным именем. | DisplayObjectContainer | |
![]() |
Возвращает позицию индекса для дочернего экземпляра DisplayObject. | DisplayObjectContainer | |
![]() | DisplayObject | ||
Возвращает первый TextLineMirrorRegion в строке, чье зеркальное свойство совпадает с параметром mirror или null, если нет совпадений. | TextLine | ||
![]() |
Возвращает массив объектов, расположенных ниже заданной позиции и являющихся дочерними объектами любого уровня для данного экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Возвращает прямоугольник, определяющий границу экранного объекта по системе координат, заданной параметром targetCoordinateSpace, за исключением линий фигур. | DisplayObject | |
![]() |
Преобразует объект Point из координат рабочей области (глобальных) в координаты экранного объекта (локальные). | DisplayObject | |
![]() |
Проверяет наличие у объекта EventDispatcher прослушивателей событий, которые зарегистрированы для получения уведомлений о событиях определенного типа. | EventDispatcher | |
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Оценивает экранный объект, чтобы определить, перекрывает ли он экранный объект obj или пересекается с ним. | DisplayObject | |
![]() |
Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x и y, или пересекает ее. | DisplayObject | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Преобразует объект point из координат экранного объекта (локальных) в координаты рабочей области (глобальные). | DisplayObject | |
![]() | DisplayObject | ||
![]() | DisplayObject | ||
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Удаляет заданный дочерний объект DisplayObject из списка потомков экземпляра DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Удаляет дочерний DisplayObject из заданной позиции индекса в списке потомков DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | |
![]() |
Изменяет положение существующего потомка в DisplayObjectContainer. | DisplayObjectContainer | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Меняет местами (в порядке "от начала к концу") два заданных дочерних объекта. | DisplayObjectContainer | |
![]() |
Меняет местами (в порядке "от начала к концу") дочерние объекты, расположенные в двух заданных позициях индекса в списке потомков. | DisplayObjectContainer | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
![]() |
Проверяет, зарегистрирован ли прослушиватель событий в объекте EventDispatcher или в любом из его предков для получения уведомлений о событиях определенного типа. | EventDispatcher |
Константа | Определено | ||
---|---|---|---|
MAX_LINE_WIDTH : int = 1000000 [статические]
Максимальная запрашиваемая ширина строки текста, в пикселах. | TextLine |
ascent | свойство |
ascent:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Указывает число пикселов от базовой линии до верхней точки самых высоких символов в строке. Для объекта TextLine, содержащего только графический элемент, ascent
имеет значение 0.
public function get ascent():Number
atomCount | свойство |
atomCount:int
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Число атомов в строке, которое представляет число невидимых элементов, включая пробелы и графические элементы.
В результате обращения к этому свойству проигрыватель создает атомарные данные, если их еще не существует.
public function get atomCount():int
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
descent | свойство |
descent:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Указывает число пикселов от базовой линии до нижней точки символов с самыми низким выносным элементом в строке. Для объекта TextLine, содержащего только графический элемент, descent
имеет значение 0.
public function get descent():Number
hasGraphicElement | свойство |
hasGraphicElement:Boolean
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Указывает, содержит ли текстовая строка графические элементы.
public function get hasGraphicElement():Boolean
См. также
mirrorRegions | свойство |
mirrorRegions:Vector
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Объект Vector содержащий объекты TextLineMirrorRegion
, связанные со строкой, или null
, если таких не существует.
public function get mirrorRegions():Vector
См. также
nextLine | свойство |
nextLine:TextLine
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Следующий объект TextLine в TextBlock или null
, если текущая строка является последней в блоке или если строка имеет валидность TextLineValidity.STATIC
.
public function get nextLine():TextLine
См. также
previousLine | свойство |
previousLine:TextLine
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Предыдущий объект TextLine в TextBlock или null
, если текущая строка является первой в блоке или если строка имеет валидность TextLineValidity.STATIC
.
public function get previousLine():TextLine
См. также
rawTextLength | свойство |
rawTextLength:int
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Длина необработанного текста в блоке, который стал строкой, включая символы U+FDEF, представляющие графические элементы и концевые пробелы, которые являются частью строки, но не отображаются.
public function get rawTextLength():int
См. также
specifiedWidth | свойство |
specifiedWidth:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Ширина, переданная методу TextBlock.createTextLine()
при создании строки. Это значение помогает определить, требует ли внесенное изменения повторной разбивки строки.
public function get specifiedWidth():Number
См. также
textBlock | свойство |
textBlock:TextBlock
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Объект TextBlock, содержащий эту текстовую строку, или 0, если она имеет валидность TextLineValidity.STATIC
.
public function get textBlock():TextBlock
См. также
textBlockBeginIndex | свойство |
textBlockBeginIndex:int
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Индекс первого символа в строка в необработанном тексте блока.
public function get textBlockBeginIndex():int
См. также
textHeight | свойство |
textHeight:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Логическая высота текстовой строки, равная сумме значений ascent
и descent
. Чтобы получить фактическую высоту, используйте унаследованное свойство height
.
Это значение рассчитывается по разнице между базовыми строками, окружающими строку, — идеографическими верхней и нижней, либо надстрочной и подстрочной в зависимости от того, является TextBlock.baselineZero идеографическим или нет. Графические элементы на учитываются при расчете этих базовых строк.
public function get textHeight():Number
См. также
textWidth | свойство |
textWidth:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Логическая ширина текстовой строки, то есть ширина, используемая текстовым процессором для раскладки строки. Используйте унаследованное свойство width
, чтобы получить фактическую ширину ограничительного прямоугольника всех нарисованных пикселов.
public function get textWidth():Number
См. также
specifiedWidth
, textWidth
и width
. Получены следующие результаты отслеживания:
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); fontDescription.fontPosture = FontPosture.ITALIC; format = new ElementFormat(fontDescription, 12); textElement = new TextElement(str, format); 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; } } }
unjustifiedTextWidth | свойство |
unjustifiedTextWidth:Number
[только для чтения] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Ширина строки, если она не выровнена. Для невыровненного текста это значение совпадает с textWidth
. Для выровненного текста это значение представляет длину, которую бы строка имела без выравнивания, а textWidth
представляет фактическую ширину строки. Например, когда следующая строка выравнивается и передается методу TextBlock.createTextLine()
с шириной 500, ее фактическая ширина составляет 500, а ширина без выравнивания — 268,9921875.
public function get unjustifiedTextWidth():Number
См. также
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 |
Дает возможность автору связать произвольные данные с текстовой строкой.
validity | свойство |
validity:String
[чтение и запись] Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Указывает текущую валидность текстовой строки. Системные значения для этого свойства находятся в элементах класса TextLineValidity
. Это свойство должно задаваться по следующим правилам.
Строке присваивается значение USER_INVALID, если валидность имеет строковое значение, не являющееся элементом класса TextLineValidity
. USER_INVALID — это абстракция, используемая здесь для представления подобных значений.
При изменении содержимого объекта TextBlock код проигрывателя помечает затронутые текстовые строки, а также предшествующую и следующую строки как INVALID. Предшествующая строка должна помечаться как недействительная, когда изменение позволяет ей включить в себя часть содержимого, которая раньше находилась в первой затронутой строке.
Вновь разбитые строки всегда помечаются как VALID. Проигрыватель может изменять следующие строки с 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 .
|
См. также
dump | () | метод |
public function dump():String
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Выдает базовое содержимое TextLine в виде строки XML. Это может пригодиться при автоматическом тестировании, т.к. включает сведения о тексте, формате и визуализации. Опция доступна только в отладчике Flash Player.
Для описания выхода см. метод TextBlock.dump() method.
Примечание. Содержимое и формат выхода этого метода могут в будущем измениться. Adobe не гарантирует обратной совместимости данного метода.
ВозвращаетString |
См. также
flushAtomData | () | метод |
public function flushAtomData():void
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Освобождает атомные данные строки для удаления. Термин "атом" относится к неделимым сущностям в строке. Текстовый процессор создает атомарные данные при обращении к свойству atomCount
или при вызове одного из методов, получающих сведения об атоме.
См. также
getAtomBidiLevel | () | метод |
public function getAtomBidiLevel(atomIndex:int):int
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет двусторонний уровень атома по заданному индексу. Это значение определяется комбинацией 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 — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomBounds | () | метод |
public function getAtomBounds(atomIndex:int):Rectangle
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет границы атома по указанному индексу, связанному с текстовой строкой. Границы заданного атома состоят из положения по горизонтали (x
) в строке, положения по вертикали (y
) в строке, ширины (w
) и высоты (h
). Все значения в пикселах.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
Rectangle — Границы атома по индексу atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomCenter | () | метод |
public function getAtomCenter(atomIndex:int):Number
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет центр атома, согласно изменениями, вдоль опорной линии по заданному индексу.
В результате вызова этого метода проигрыватель создает атомные данные, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
Number — Центр атома по индексу atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomGraphic | () | метод |
public function getAtomGraphic(atomIndex:int):DisplayObject
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет график атома по заданному индексу или null
, если атом — это символ.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
DisplayObject — График атома по индексу atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomIndexAtCharIndex | () | метод |
public function getAtomIndexAtCharIndex(charIndex:int):int
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Возвращает индекс атома, содержащего символ, заданный параметром charIndex
или -1, если символ не входит ни в один атом в строке. Параметр charIndex
относится ко всему содержимому текстового блока, в который входит строка.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
charIndex:int — Отсчитываемое от нуля значение индекса для символа (например, первый символ имеет индекс 0, второй — 1 и т.д.).
|
int — Индекс атома, содержащего символ по индексу charIndex . Возвращает -1, если символ не входит ни в один атом строки.
|
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomIndexAtPoint | () | метод |
public function getAtomIndexAtPoint(stageX:Number, stageY:Number):int
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Возвращает индекс атома в точке, заданной параметрами х
и у
или -1, если в этой точке нет атома.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Этот метод получает глобальные координаты, чтобы его можно было легко использовать со свойствами MouseEvent.stageX
и MouseEvent.stageY
.
Параметры
stageX:Number — Глобальная координата x тестируемой точки.
| |
stageY:Number — Глобальная координата y тестируемой точки.
|
int — Индекс атома под точкой. Возвращает "-1", если точка не переходит ни один из атомов.
|
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomTextBlockBeginIndex | () | метод |
public function getAtomTextBlockBeginIndex(atomIndex:int):int
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет индекс начала текстового блока атома по заданному индексу.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
int — Индекс начала текстового блока атома atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomTextBlockEndIndex | () | метод |
public function getAtomTextBlockEndIndex(atomIndex:int):int
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет индекс конца текстового блока атома по заданному индексу.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
int — Индекс конца текстового блока атома atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomTextRotation | () | метод |
public function getAtomTextRotation(atomIndex:int):String
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет вращение атома по заданному индексу. Для этого свойства используются константы TextRotation. Вращение атома является совокупностью вращений образа символа (согласно определению ElementFormat.textRotation
), элемента и строки.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
String — Вращение атома по индексу atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getAtomWordBoundaryOnLeft | () | метод |
public function getAtomWordBoundaryOnLeft(atomIndex:int):Boolean
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Указывает, лежит ли граница слова слева от атома по заданному индексу. Границы слова определяются на основе свойств Unicode символов, переданных строке.
В результате вызова этого метода проигрыватель создает данные атома, если их еще не существует.
Параметры
atomIndex:int — Отсчитываемое от нуля значение индекса атома (например, первый атом имеет индекс 0, второй — 1 и т.д.).
|
Boolean — Логическое значение, указывающее, находится ли граница слова слева от атома в atomIndex .
|
RangeError — Указанный индекс атома лежит вне диапазона.
| |
IllegalOperationError — Валидность строки — TextLineValidity.STATIC .
|
См. также
getBaselinePosition | () | метод |
public function getBaselinePosition(baseline:String):Number
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Определяет положение заданной базовой линии относительно TextBlock.baselineZero
.
Параметры
baseline:String — Базовая линия, относительно которой задано положение. Используйте значения TextBaseline .
|
Number — Положение заданной базовой линии относительно TextBlock.baselineZero .
|
ArgumentError — Заданная локаль baseline не является членом TextBaseline .
|
См. также
getMirrorRegion | () | метод |
public function getMirrorRegion(mirror:EventDispatcher):TextLineMirrorRegion
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Возвращает первый TextLineMirrorRegion
в строке, чье зеркальное
свойство совпадает с параметром mirror
или null
, если нет совпадений.
Даже один TextElement
может произвести несколько объектов TextLineMirrorRegion
на одной или более строках в зависимости от уровня двунаправленности и разрывов строк. Свойства nextRegion
и previousRegion
связывают все зеркальные области, генерируемые одним элементом текста.
Параметры
mirror:EventDispatcher — Зеркальный объект EventDispatcher для поиска.
|
TextLineMirrorRegion — Первый TextLineMirrorRegion в строке, чье свойство mirror совпадает с заданным значением или null , если нет совпадений.
|
См. также
MAX_LINE_WIDTH | Константа |
public static const MAX_LINE_WIDTH:int = 1000000
Язык версии : | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10 |
Максимальная запрашиваемая ширина строки текста, в пикселах. Метод TextBlock.createTextLine()
использует эту константу в качестве значения по умолчанию для параметра width
, если не задано другое значение.
См. также
getAtomBounds()
.
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 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 fontDescription:FontDescription = new FontDescription("Arial"); 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."; fontDescription.fontPosture = FontPosture.ITALIC; var format:ElementFormat = new ElementFormat(fontDescription); format.fontSize = 12; var textElement1:TextElement = new TextElement(directions, format); textBlock.content = textElement1; createLines(textBlock, 15, 160, 400, this); var textElement2:TextElement = new TextElement(myText, format); fontDescription.fontPosture = FontPosture.NORMAL; format.fontSize = 16; 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:ElementFormat = new ElementFormat(fontDescription); fontDescription.fontPosture = FontPosture.NORMAL; format.fontSize = 12; 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 te3:TextElement = new TextElement(atomInfo, format); atomtextBlock.content = te3; createLines(atomtextBlock,20,200,500, atomDataContainer) addChild(atomDataContainer); } private function removeAtom(textLine):void { textLine.removeChild(textLine.userData); } } }