NSTextContainer
NSTextContainer класс определяет область, где размечается текст. NSLayoutManager использование NSTextContainer для определения, где повредить строки разметьте части текста и т.д. NSTextContainer определяет прямоугольные области, но можно создать подклассы, определяющие области других форм, такие как круговые области, области с дырами в них или области тот поток рядом с графикой.
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
NSTextLayoutOrientationProvider -
Печатаемый -
NSCoding -
NSObject -
NSTextLayoutOrientationProvider
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Инициализирует текстовый контейнер с указанным ограничительным прямоугольником.
Объявление
Swift
init(containerSizeaSize: NSSize)Objective C
- (instancetype)initWithContainerSize:(NSSize)aSizeПараметры
aSizeРазмер текстового ограничительного прямоугольника контейнера.
Возвращаемое значение
Недавно инициализированный текстовый контейнер.
Обсуждение
Новый текстовый контейнер должен быть добавлен к
NSLayoutManagerобъект, прежде чем это сможет использоваться. Текстовый контейнер должен также иметьNSTextViewобъектный набор для текста, который будет выведен на экран. Этот метод является определяемым инициализатором дляNSTextContainerкласс.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– addTextContainer:(NSLayoutManager)– setTextView:
-
Устанавливает менеджера по расположению получателя.
Объявление
Swift
unowned(unsafe) var layoutManager: NSLayoutManager?Objective C
@property(assign) NSLayoutManager *layoutManagerПараметры
aLayoutManagerНовый менеджер по расположению.
Обсуждение
Когда Вы добавляете текстовый контейнер к менеджеру по расположению, этот метод вызывается автоматически; Вы никогда не должны должны быть вызывать его непосредственно, но могли бы хотеть переопределить его. Если Вы хотите заменить менеджера расположения установленной группы текстовых системных объектов, использовать
replaceLayoutManager:.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– addTextContainer:(NSLayoutManager)– layoutManager -
Возвращает менеджера по расположению получателя.
Объявление
Swift
unowned(unsafe) var layoutManager: NSLayoutManager?Objective C
@property(assign) NSLayoutManager *layoutManagerВозвращаемое значение
Текстовый менеджер по расположению контейнера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Заменяет менеджера расположения группы текстовых системных объектов, содержащих получатель.
Объявление
Swift
func replaceLayoutManager(_aLayoutManager: NSLayoutManager?)Objective C
- (void)replaceLayoutManager:(NSLayoutManager *)aLayoutManagerПараметры
aLayoutManagerНовый менеджер по расположению.
Обсуждение
Все текстовые контейнеры и текстовое совместное использование представлений менеджера по первоначальному макету совместно используют нового менеджера по расположению. Этот метод вносит все корректировки, необходимые для сохранения этих отношений в целости в отличие от этого
setLayoutManager:.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает текстовое представление получателя.
Параметры
aTextViewНовое текстовое представление.
Обсуждение
Этот метод отправляет
setTextContainer:кaTextViewзавершать ассоциацию текстового контейнера и текстового представления.Поскольку Вы обычно указываете текстовый контейнер при создании текстового представления необходимо редко должны быть вызвать этот метод. Текстовый контейнер не нуждается в текстовом представлении для вычисления прямоугольников фрагмента строки, но должен иметь для отображения текста.
Можно использовать этот метод для разъединения текстового представления от группы текстовых системных объектов путем отправки этого сообщения в его текстовый контейнер и передачу
nilкакaTextView.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– initWithFrame:textContainer:(NSTextView)– replaceTextContainer:(NSTextView) -
Возвращает текстовое представление получателя.
Возвращаемое значение
Текстовое представление получателя, или
nilесли это не имеет ни одного.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает размер ограничительного прямоугольника получателя.
Параметры
aSizeНовый размер текстового ограничительного прямоугольника контейнера.
Обсуждение
Этот метод также отправляет
textContainerChangedGeometry:текстовому менеджеру по расположению контейнера.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– setTextContainerInset:(NSTextView)– containerSize -
Возвращает размер ограничительного прямоугольника получателя, независимо от размера его области.
Возвращаемое значение
Размер ограничительного прямоугольника получателя, независимо от размера его области.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– textContainerInset(NSTextView)– setContainerSize: -
Средства управления, корректирует ли получатель ширину своего ограничительного прямоугольника, когда изменено его текстовое представление.
Объявление
Swift
var widthTracksTextView: BoolObjective C
@property BOOL widthTracksTextViewПараметры
flagYEStrueесли получатель должен следовать за изменениями в ширине его текстового представления,NOfalseиначе.Обсуждение
См. текстовый Системный Обзор Уровня хранения для получения дополнительной информации об отслеживании размера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвраты, корректирует ли получатель ширину своего ограничительного прямоугольника, когда изменено его текстовое представление.
Объявление
Swift
var widthTracksTextView: BoolObjective C
@property BOOL widthTracksTextViewВозвращаемое значение
YEStrueкогда его текстовое представление изменено, если получатель корректирует ширину своего ограничительного прямоугольникаNOfalseиначе.Обсуждение
Если получатель действительно отслеживает текстовое представление width, его ширина корректируется к ширине текстового представления минус дважды ширина вставки (как дано
NSTextViewtextContainerInsetметод).См. текстовый Системный Обзор Уровня хранения для получения дополнительной информации об отслеживании размера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Средства управления, регулирует ли получатель высоту своего ограничительного прямоугольника, когда изменено его текстовое представление.
Объявление
Swift
var heightTracksTextView: BoolObjective C
@property BOOL heightTracksTextViewПараметры
flagYEStrueесли получатель должен следовать за изменениями в высоте его текстового представления,NOfalseиначе.Обсуждение
См. текстовый Системный Обзор Уровня хранения для получения дополнительной информации об отслеживании размера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвраты, регулирует ли получатель высоту своего ограничительного прямоугольника, когда изменено его текстовое представление.
Объявление
Swift
var heightTracksTextView: BoolObjective C
@property BOOL heightTracksTextViewВозвращаемое значение
YEStrueкогда его текстовое представление изменено, если получатель регулирует высоту своего ограничительного прямоугольникаNOfalseиначе.Обсуждение
Если получатель действительно отслеживает текстовую высоту представления, ее высота регулируется к высоте текстового представления минус дважды высота вставки (как дано
NSTextViewtextContainerInsetметод).См. текстовый Системный Обзор Уровня хранения для получения дополнительной информации об отслеживании размера.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Устанавливает сумму, которой текст вставляется в прямоугольниках фрагмента строки.
Объявление
Swift
var lineFragmentPadding: CGFloatObjective C
@property CGFloat lineFragmentPaddingПараметры
aFloatСумма, которой текст вставляется в прямоугольниках фрагмента строки в точках.
Обсуждение
Этот метод также отправляет
textContainerChangedGeometry:текстовому менеджеру по расположению контейнера.Дополнение фрагмента строки не разработано к явно выраженным полям текста. Вместо этого используйте
NSTextViewметодsetTextContainerInset:, атрибуты поля абзаца или позиция текста просматривают в суперпредставлении.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает сумму, которой текст вставляется в прямоугольниках фрагмента строки.
Объявление
Swift
var lineFragmentPadding: CGFloatObjective C
@property CGFloat lineFragmentPaddingВозвращаемое значение
Сумма, которой текст вставляется в прямоугольниках фрагмента строки в точках.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
lineFragmentRectForProposedRect (_: sweepDirection:movementDirection:remainingRect:) - lineFragmentRectForProposedRect:sweepDirection:movementDirection:remainingRect:Переопределенный подклассами, чтобы вычислить и возвратить самый длинный прямоугольник, доступный в предложенном прямоугольнике для отображения текста, или
NSZeroRectесли нет ни одного согласно определению области получателя.Объявление
Swift
func lineFragmentRectForProposedRect(_proposedRect: NSRect, sweepDirectionsweepDirection: NSLineSweepDirection, movementDirectionmovementDirection: NSLineMovementDirection, remainingRectremainingRect: NSRectPointer) -> NSRectObjective C
- (NSRect)lineFragmentRectForProposedRect:(NSRect)proposedRectsweepDirection:(NSLineSweepDirection)sweepDirectionmovementDirection:(NSLineMovementDirection)movementDirectionremainingRect:(NSRectPointer)remainingRectПараметры
proposedRectПредложенный прямоугольник тот, в который к тексту расположения.
sweepDirectionНаправление развертки строки.
movementDirectionНаправление перемещения строки.
remainingRectПо возврату, неиспользованному, возможно смещенному, часть
proposedRectэто доступно для дальнейшего текста, илиNSZeroRectесли нет никакого остатка.Возвращаемое значение
Самый длинный прямоугольник, доступный в предложенном прямоугольнике для отображения текста, или
NSZeroRectесли нет ни одного согласно определению области получателя.Обсуждение
Нет никакой гарантии относительно ширины предложенного прямоугольника или к его расположению. Например, предложенный прямоугольник, вероятно, будет намного более широким, чем ширина получателя. Получатель должен исследовать
proposedRectвидеть, что это пересекает свой ограничительный прямоугольник и должно возвратить измененный прямоугольник на основеsweepDirectionиmovementDirection, чьи возможные значения перечислены в описании класса. ЕслиsweepDirectionNSLineSweepRight, например, получатель использует эту информацию для обрезки правильного концаproposedRectпо мере необходимости, а не левый конец.Если
proposedRectне полностью перекрывает область вдоль осиmovementDirectionиmovementDirectionнеNSLineDoesntMove, этот метод может или сместить прямоугольник в том направлении так же по мере необходимости так, чтобы это действительно полностью наложилось, или возвратNSZeroRectуказать, что просто не соответствует предложенный прямоугольник.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
isSimpleRectangularTextContainer - isSimpleRectangularTextContainerДоступный в OS X v10.0 через OS X v10.9Переопределенный подклассами, чтобы возвратиться, является ли область получателя прямоугольником без дыр или разрывов и чьи края параллельны текстовым осям системы координат представления.
Объявление
Objective C
- (BOOL)isSimpleRectangularTextContainerВозвращаемое значение
YEStrueесли область получателя является прямоугольником без дыр или разрывов и чьи края параллельны текстовым осям системы координат представления,NOfalseиначе.Обсуждение
Текстовый контейнер, изменения формы которого могут возвратиться
YEStrueесли его область является в настоящее время простым прямоугольником, но когда его форма действительно изменяется, он должен отправитьtextContainerChangedGeometry:его менеджеру по расположению, таким образом, расположение может быть повторно вычислено.Значение по умолчанию
NSTextContainerреализация этого метода возвратыYEStrue.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 через OS X v10.9.
-
Переопределенный подклассами, чтобы возвратиться, находится ли точка в области получателя или на краю области — не просто в его ограничительном прямоугольнике.
Объявление
Swift
func containsPoint(_aPoint: NSPoint) -> BoolObjective C
- (BOOL)containsPoint:(NSPoint)aPointПараметры
aPointРассматриваемый вопрос.
Возвращаемое значение
YEStrueеслиaPointнаходится в области получателя или на краю области — не просто в его ограничительном прямоугольнике —NOfalseиначе.Обсуждение
Например, если получатель определяет форму пончика и
aPointнаходится в дыре, этот метод возвратыNOfalse. Этот метод может использоваться для тестирования хита событий от нажатия мыши.Значение по умолчанию
NSTextContainerреализация просто проверяет этоaPointнаходится в его ограничительном прямоугольнике.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Эти константы описывают прогрессию текста на странице. Наборное устройство решает, какой путь текст, как предполагается, течет и передает эти значения как параметры текстовому контейнеру, использующему их для вычисления прямоугольника следующей строки.
Объявление
Swift
enum NSLineSweepDirection : UInt { case Left case Right case Down case Up }Objective C
enum { NSLineSweepLeft = 0, NSLineSweepRight = 1, NSLineSweepDown = 2, NSLineSweepUp = 3 }; typedef NSUInteger NSLineSweepDirection;Константы
-
LeftNSLineSweepLeftСимволы перемещаются справа налево.
Доступный в OS X v10.0 и позже.
-
RightNSLineSweepRightСимволы перемещаются слева направо.
Доступный в OS X v10.0 и позже.
-
DownNSLineSweepDownСимволы перемещаются сверху донизу.
Доступный в OS X v10.0 и позже.
-
UpNSLineSweepUpСимволы перемещаются от нижней части до вершины.
Доступный в OS X v10.0 и позже.
Обсуждение
Развертка строки является текстовым прогрессом направления в строке. См. текстовый Системный Обзор Уровня хранения.
Единственные значения, в настоящее время используемые предоставленными наборными устройствами,
NSLineSweepRightиNSLineMovesDown.NSTextContainerподкласс должен быть подготовлен иметь дело с любым значением, иNSTypesetterподкласс должен быть в состоянии использовать любого из них.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
-
Перемещение строки является направлением, в которое перемещаются строки. См. текстовый Системный Обзор Уровня хранения.
Объявление
Swift
enum NSLineMovementDirection : UInt { case DoesntMove case MovesLeft case MovesRight case MovesDown case MovesUp }Objective C
enum { NSLineDoesntMove = 0, NSLineMovesLeft = 1, NSLineMovesRight = 2, NSLineMovesDown = 3, NSLineMovesUp = 4 }; typedef NSUInteger NSLineMovementDirection;Константы
-
MovesLeftNSLineMovesLeftСтроки перемещаются справа налево.
Доступный в OS X v10.0 и позже.
-
MovesRightNSLineMovesRightСтроки перемещаются слева направо.
Доступный в OS X v10.0 и позже.
-
MovesDownNSLineMovesDownСтроки перемещаются сверху донизу.
Доступный в OS X v10.0 и позже.
-
MovesUpNSLineMovesUpСтроки перемещаются от нижней части до вершины.
Доступный в OS X v10.0 и позже.
-
DoesntMoveNSLineDoesntMoveСтрока не имеет никакого перемещения.
Доступный в OS X v10.0 и позже.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
