Ссылка служб словаря
Dictionary Services обеспечивает функции, позволяющие Вам словари доступа программно из Вашего приложения. Существует три функции, описанные в этой ссылке. Два из них определяются в платформе Core Services; третье определяется в платформе Углерода.
Словарь является любой ссылкой поиска, создающейся с помощью Комплекта разработчика Словаря. Содержание словаря может служить многим целям. Самое типичное использование должно обеспечить определения для единственного языка, но можно создать содержание для тезауруса, двуязычные словари (такой столь же англо-японский), внутренние глоссарии и профессиональные словари (такой как законный, медицинский, и технический).
-
Определяет диапазон самого долгого слова или фразы относительно смещения.
Объявление
Swift
func DCSGetTermRangeInString(_dictionary: DCSDictionary!, _textString: CFString!, _offset: CFIndex) -> CFRangeObjective C
CFRange DCSGetTermRangeInString ( DCSDictionaryRef dictionary, CFStringRef textString, CFIndex offset );Параметры
dictionaryЭтот параметр резервируется для будущего использования, так передача
NULL. Dictionary Services ищет во всех активных словарях.textStringТекст, содержащий слово или фразу для поиска.
offsetСимвольное смещение в
textStringпараметр.Возвращаемое значение
Диапазон, указывающий расположение, вокруг указанного смещения, слова или фразы или константы
kCFNotFound.Обсуждение
Можно использовать эту функцию для определения диапазона текста, содержащего слово или фразу. После определения диапазона можно передать результат функциям
DCSCopyTextDefinitionиHIDictionaryWindowShow.Чтобы видеть, как это работает, выполните эти шаги:
В OS X v10.5 или позже, откройте Text Edit.
Ввести
It is a foggy day in San Francisco, California.Щелчок управления
Francisco(не выбирайте его). Затем выберите «Lookup in Dictionary».
Обратите внимание на то, что окно Dictionary появляется с определением Сан-Франциско. Функция
DCSGetTermRangeInStringавтоматически обнаруженный диапазон фразы Сан-Франциско, с помощьюFranciscoкак текстовая строка для поиска и символьное смещение в этой строке. Функция развернула диапазон, пока это не нашло возможное соответствие.Можно также указать на курсор на слово
Franciscoи, не делая выбор или щелчок, введите Command-Control-D.DCSGetTermRangeInStringобнаруживает диапазон.Функция
DCSGetTermRangeInStringтолько возвращает диапазон. Необходимо вызватьDCSCopyTextDefinitionскопировать определение иHIDictionaryWindowShowвывести на экран определение в окне Dictionary.Оператор импорта
Objective C
@import CoreServices;Swift
import CoreServicesДоступность
Доступный в OS X v10.5 и позже.
-
Возвращает определение, связанное с предоставленным текстовым диапазоном.
Объявление
Swift
func DCSCopyTextDefinition(_dictionary: DCSDictionary!, _textString: CFString!, _range: CFRange) -> Unmanaged<CFString>!Objective C
CFStringRef DCSCopyTextDefinition ( DCSDictionaryRef dictionary, CFStringRef textString, CFRange range );Параметры
dictionaryЭтот параметр резервируется для будущего использования, так передача
NULL. Dictionary Services ищет во всех активных словарях.textStringТекст, содержащий слово или фразу для поиска.
rangeДиапазон, указывающий расположение слова или фразы в
textStringпараметр. Если текстовая строка точно указывает слово или фразу, которую Вы хотите искать, можно передать диапазон текстовой строки. Например, для словаmake, Вы передали бы (0,4) указать диапазон.Если
textStringпараметр содержит слово или фразу, но не указывает его точно, затем передает диапазон, возвращенный функциейDCSGetTermRangeInString.Возвращаемое значение
Определение слова или фразы, как простой текст. Возвращенный текст не содержит элементов, отмеченных с a
priorityприпишите, чье значение2.Обсуждение
Эта функция возвращает описание первой записи соответствия, найденной в активные словари. Это ищет сначала в словаре определения слова по умолчанию, который, в английской среде, является Оксфордским словарем.
Оператор импорта
Objective C
@import CoreServices;Swift
import CoreServicesДоступность
Доступный в OS X v10.5 и позже.
-
Результат поиска словаря дисплеев в окне словаря.
Объявление
Swift
func HIDictionaryWindowShow(_dictionary: DCSDictionary!, _textString: AnyObject!, _selectionRange: CFRange, _textFont: CTFont!, _textOrigin: CGPoint, _verticalText: Boolean, _viewTransform: UnsafePointer<CGAffineTransform>)Objective C
void HIDictionaryWindowShow ( DCSDictionaryRef dictionary, CFTypeRef textString, CFRange selectionRange, CTFontRef textFont, CGPoint textOrigin, Boolean verticalText, const CGAffineTransform *viewTransform );Параметры
dictionaryЭтот параметр резервируется для будущего использования, так передача
NULL. Dictionary Services ищет во всех активных словарях.textStringТекст, содержащий слово или фразу для поиска указанный как одно из следующего: a
CFStringобъект, aCFAttributedStringобъект или aCFDataобъект, содержащий текст в Формате RTF. Dictionary Services использует текстовые атрибуты для рисования заголовка окна словаря. Если Вы обеспечиваете текстовую строку как aCFStringобъект, необходимо также обеспечить экранный шрифт вtextFontпараметр.selectionRangeПри использовании этой функции, чтобы показать, что результаты, связанные с текстом, выбранным пользователем, то обеспечивают диапазон выбора
textStringпараметр. При использовании этой функции, чтобы показать, что результаты связались с вызовомDCSGetTermRangeInStringфункция, затем обеспечьте диапазон, возвращенный той функцией.textFontБазовый Шрифт текста для использования для заголовка окна словаря. Необходимо обеспечить шрифт только когда
textStringпараметр является aCFStringобъект; иначе Dictionary Services игнорирует этот параметр.textOriginИсточник, в экранных пикселях, типографской базовой линии символов, указанных
selectionRangeпараметр. Верхний левый из экрана (0,0).verticalTextЭтот параметр резервируется для будущего использования. Dictionary Services составляет текст в горизонтальной ориентации независимо от того, передаете ли Вы
trueилиfalse.viewTransformМатрица аффинного преобразования для применения к окну, содержащему текстовую строку. Передача
NULLиспользовать единичную матрицу. Используйте это для выравнивания окна словаря с оригинальным текстом. Можно только применить преобразование масштабирования; Вы не можете применить другие типы трансформаций.Обсуждение
Эта функция открывает окно для отображения определения слова или фразы.
Оператор импорта
Objective C
@import Carbon;Swift
import CarbonДоступность
Доступный в OS X v10.5 и позже.
-
Непрозрачный объект, представляющий файл словаря.
Объявление
Swift
typealias DCSDictionaryRef = DCSDictionaryObjective C
typedef const struct __DCSDictionary* DCSDictionaryRef;Обсуждение
Этот тип данных резервируется для будущего использования.
Оператор импорта
Objective C
@import CoreServices;Swift
import CoreServicesДоступность
Доступный в OS X v10.5 и позже.
