Ссылка CFAttributedString
Экземпляры CFAttributedString управляют символьными строками и связанными наборами атрибутов (например, шрифт и использующая кернинг информация), которые применяются к отдельным символам или диапазонам символов в строке. CFAttributedString, как определено в Базовой Основе обеспечивает основную контейнерную функциональность, в то время как более высокие уровни обеспечивают определения для стандартных атрибутов, их значений и дополнительных способов поведения, включающих их. CFAttributedString представляет неизменную строку — использование CFMutableAttributedStringRef создать и управлять приписанной строкой, которая может быть изменена после того, как она была создана.
CFAttributedString не является «подклассом» CFString; т.е. это не отвечает на вызовы функции CFString. CFAttributedString концептуально содержит CFString, к которому он применяет атрибуты. Это защищает Вас от случаев неоднозначности, вызванных семантическими различиями между простой и приписанной строкой.
Атрибуты идентифицируются парами ключ/значение, сохраненными в объектах CFDictionary. В то время как соответствующие значения являются объектами CFType надлежащего типа, ключи должны быть объектами CFString. Посмотрите константы атрибута в дополнительной NSAttributedString AppKit Ссылке или дополнительной NSAttributedString UIKit Ссылке для стандартных названий атрибута.
CFAttributedString “бесплатный соединенный мостом” с его дубликатом Основы, NSAttributedString. Это означает, что Базовый тип Основы является взаимозаменяемым в вызовах функции или вызовах метода с соединенным мостом объектом Основы. Поэтому в методе, где Вы видите NSAttributedString * параметр, можно передать в a CFAttributedStringRef, и в функции, где Вы видите a CFAttributedStringRef параметр, можно передать в NSAttributedString экземпляр. Это также применяется к конкретным подклассам NSAttributedString. Посмотрите Бесплатные Соединенные мостом Типы для получения дополнительной информации о бесплатном образовании моста.
-
Создает приписанную строку с указанной строкой и атрибутами.
Объявление
Swift
func CFAttributedStringCreate(_alloc: CFAllocator!, _str: CFString!, _attributes: CFDictionary!) -> CFAttributedString!Objective C
CFAttributedStringRef CFAttributedStringCreate ( CFAllocatorRef alloc, CFStringRef str, CFDictionaryRef attributes );Параметры
allocСредство выделения для использования для выделения памяти для новой приписанной строки. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.strСтрока, указывающая символы для использования в новой приписанной строке. Это значение копируется.
attributesСловарь, содержащий атрибуты для применения к новой приписанной строке. Это значение копируется.
Возвращаемое значение
Приписанная строка, содержащая символы от
strи атрибуты, указанныеattributes. РезультатNULLесли была проблема в создании приписанной строки. Владение соблюдает Создать Правило.Обсуждение
Обратите внимание на то, что и строка и словарь атрибутов копируются. Указанные атрибуты применяются к целой строке. Если Вы хотите применить различные атрибуты к различным диапазонам строки, необходимо использовать непостоянную приписанную строку.
Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Создает неизменную копию приписанной строки.
Объявление
Swift
func CFAttributedStringCreateCopy(_alloc: CFAllocator!, _aStr: CFAttributedString!) -> CFAttributedString!Objective C
CFAttributedStringRef CFAttributedStringCreateCopy ( CFAllocatorRef alloc, CFAttributedStringRef aStr );Параметры
allocСредство выделения для использования для выделения памяти для новой приписанной строки. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.aStrПриписанная строка для копирования.
Возвращаемое значение
Неизменная приписанная строка с символами и атрибутами, идентичными тем
aStr. ВозвратыNULLесли была проблема, копируя объект. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Создает подприписанную строку из указанного диапазона.
Объявление
Swift
func CFAttributedStringCreateWithSubstring(_alloc: CFAllocator!, _theString: CFAttributedString!, _range: CFRange) -> CFAttributedString!Objective C
CFAttributedStringRef CFAttributedStringCreateWithSubstring ( CFAllocatorRef alloc, CFAttributedStringRef aStr, CFRange range );Параметры
allocСредство выделения для использования для выделения памяти для новой приписанной строки. Передача
NULLилиkCFAllocatorDefaultиспользовать текущее средство выделения по умолчанию.theStringПриписанная строка для копирования.
rangeДиапазон приписанной строки для копирования.
rangeне должен превышать границыaStr.Возвращаемое значение
Новая приписанная строка, строка которой и атрибуты копируются с указанного диапазона предоставленной приписанной строки. Возвраты
NULLесли была проблема, копируя объект. Владение соблюдает Создать Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает длину приписанной строки в символах.
Объявление
Swift
func CFAttributedStringGetLength(_str: CFAttributedString!) -> CFIndexObjective C
CFIndex CFAttributedStringGetLength ( CFAttributedStringRef aStr );Параметры
strПриписанная строка для исследования.
Возвращаемое значение
Длина приписанной строки в символах; это совпадает с
CFStringGetLength(CFAttributedStringGetString(aStr)).Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает строку для приписанной строки.
Объявление
Swift
func CFAttributedStringGetString(_aStr: CFAttributedString!) -> CFString!Objective C
CFStringRef CFAttributedStringGetString ( CFAttributedStringRef aStr );Параметры
aStrПриписанная строка для исследования.
Возвращаемое значение
Неизменная строка, содержащая символы от
aStr, илиNULLесли была проблема, создающая объект. Владение соблюдает Получить Правило.Обсуждение
По причинам производительности возвратилась строка, часто будет запоминающее устройство приписанной строки, и это могло бы поэтому измениться, если редактируется приписанная строка. Однако это - подробность реализации, и Вы не должны полагаться на это поведение.
Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает значение данного атрибута приписанной строки в указанном расположении.
Объявление
Swift
func CFAttributedStringGetAttribute(_str: CFAttributedString!, _loc: CFIndex, _attrName: CFString!, _effectiveRange: UnsafeMutablePointer<CFRange>) -> AnyObject!Objective C
CFTypeRef CFAttributedStringGetAttribute ( CFAttributedStringRef aStr, CFIndex loc, CFStringRef attrName, CFRange *effectiveRange );Параметры
strПриписанная строка для исследования.
locРасположение в
strв котором можно определить атрибуты.locне должен превышать границыstr.attrNameИмя атрибута, значение которого Вы хотите определить.
effectiveRangeЕсли нет
NULL, по возврату содержит диапазон включаяlocпо которому точно тот же набор атрибутов применяются как вloc.Возвращаемое значение
Значение указанного атрибута в указанном расположении в
str. Владение соблюдает Получить Правило.Обсуждение
По причинам производительности диапазон возвратился в
effectiveRangeне обязательно максимальный диапазон. При необходимости в максимальном диапазоне необходимо использоватьCFAttributedStringGetAttributeAndLongestEffectiveRange.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает атрибуты приписанной строки в указанном расположении.
Объявление
Swift
func CFAttributedStringGetAttributes(_str: CFAttributedString!, _loc: CFIndex, _effectiveRange: UnsafeMutablePointer<CFRange>) -> CFDictionary!Objective C
CFDictionaryRef CFAttributedStringGetAttributes ( CFAttributedStringRef aStr, CFIndex loc, CFRange *effectiveRange );Параметры
strПриписанная строка для исследования.
locРасположение в
strв котором можно определить атрибуты.locне должен превышать границыstr.effectiveRangeЕсли нет
NULL, по возврату содержит диапазон включаяlocпо которому точно тот же набор атрибутов применяются как вloc.Возвращаемое значение
Словарь, содержащий атрибуты
strв указанном расположении. Владение соблюдает Получить Правило.Обсуждение
По причинам производительности диапазон возвратился в
effectiveRangeне обязательно максимальный диапазон. При необходимости в максимальном диапазоне необходимо использоватьCFAttributedStringGetAttributesAndLongestEffectiveRange.Если приписанная строка редактируется после этого вызова, Обратите внимание на то, что возвращенный словарь атрибута мог бы измениться непредсказуемыми способами. Если Вы хотите сохранить состояние словаря, необходимо сделать фактическую копию из него вместо того, чтобы просто сохранить его. Кроме того, Вы не должны делать предположения об отношении фактического словаря возвращенными этим вызовом, и словарь первоначально раньше устанавливал атрибуты кроме факта, что значения, сохраненные в словарях, будут идентичны (т.е.
==) к первоначально указанным.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
CFAttributedStringGetAttributeAndLongestEffectiveRange (_: _: _: _: _:) CFAttributedStringGetAttributeAndLongestEffectiveRangeВозвращает значение данного атрибута приписанной строки в указанном расположении.
Объявление
Swift
func CFAttributedStringGetAttributeAndLongestEffectiveRange(_str: CFAttributedString!, _loc: CFIndex, _attrName: CFString!, _inRange: CFRange, _effectiveRange: UnsafeMutablePointer<CFRange>) -> AnyObject!Objective C
CFTypeRef CFAttributedStringGetAttributeAndLongestEffectiveRange ( CFAttributedStringRef aStr, CFIndex loc, CFStringRef attrName, CFRange inRange, CFRange *longestEffectiveRange );Параметры
strПриписанная строка для исследования.
locРасположение в
strв котором можно определить атрибуты. Это - программная ошибка дляlocуказать расположение вне границstr.attrNameИмя атрибута, значение которого Вы хотите определить.
inRangeДиапазон в
strв котором Вы хотите найти самый длинный диапазон измерений атрибутов вloc.inRangeне должен превышать границыstr.effectiveRangeЕсли нет
NULL, по возврату содержит максимальный диапазон вinRangeпо которому тот же самый набор атрибутов применяются. Возвращенный диапазон отсекается кinRange.Возвращаемое значение
Словарь, содержащий атрибуты
strв указанном расположении. Владение соблюдает Получить Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
CFAttributedStringGetAttributesAndLongestEffectiveRange (_: _: _: _:) CFAttributedStringGetAttributesAndLongestEffectiveRangeВозвращает атрибуты приписанной строки в указанном расположении.
Объявление
Swift
func CFAttributedStringGetAttributesAndLongestEffectiveRange(_str: CFAttributedString!, _loc: CFIndex, _inRange: CFRange, _effectiveRange: UnsafeMutablePointer<CFRange>) -> CFDictionary!Objective C
CFDictionaryRef CFAttributedStringGetAttributesAndLongestEffectiveRange ( CFAttributedStringRef aStr, CFIndex loc, CFRange inRange, CFRange *longestEffectiveRange );Параметры
strПриписанная строка для исследования.
locРасположение в
strв котором можно определить атрибуты.locне должен превышать границыstr.inRangeДиапазон в
strв найти самый длинный диапазон измерений атрибутов вloc.inRangeне должен превышать границыstr.effectiveRangeЕсли нет
NULL, по возврату содержит максимальный диапазон вinRangeпо которому тот же самый набор атрибутов применяются. Возвращенный диапазон отсекается кinRange.Возвращаемое значение
Словарь, содержащий атрибуты
strв указанном расположении. Владение соблюдает Получить Правило.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Возвращает идентификатор типа для CFAttributedString непрозрачный тип.
Объявление
Swift
func CFAttributedStringGetTypeID() -> CFTypeIDObjective C
CFTypeID CFAttributedStringGetTypeID ( void );Возвращаемое значение
Идентификатор типа для CFAttributedString непрозрачный тип.
Обсуждение
Объекты CFMutableAttributedString имеют тот же идентификатор типа как объекты CFAttributedString.
Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
-
Ссылка на объект CFAttributedString.
Объявление
Swift
typealias CFAttributedStringRef = CFAttributedStringObjective C
typedef const struct __CFAttributedString *CFAttributedStringRef;Обсуждение
CFAttributedStringRefтип относится к объекту, комбинирующему объект CFString с набором атрибутов, указывающих, как символы в строке должны быть выведены на экран. CFAttributedString является непрозрачным типом, определяющим характеристики и поведение объектов CFAttributedString.Значения типа
CFAttributedStringRefможет относиться к неизменным или непостоянным строкам, поскольку объекты CFMutableAttributedString реагируют на все функции, предназначенные для неизменных объектов CFAttributedString. Принимающие функцииCFAttributedStringRefзначения, и который должен держаться за значения неизменно, должны вызватьCFAttributedStringCreateWithSubstring(вместоCFRetain) сделать так.Оператор импорта
Objective C
@import CoreFoundation;Swift
import CoreFoundationДоступность
Доступный в OS X v10.4 и позже.
