Основной текст - Core Text
Эта статья нужны дополнительные цитаты для проверка.Сентябрь 2007 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Основной текст это Основной фундамент стиль API в macOS, впервые представленный в Mac OS X 10.4 Tiger, обнародовано в Mac OS X 10.5 Leopard, и введен для iPad с iPhone SDK 3.2. Разоблачение C API, он заменяет возможности визуализации текста в устаревших Зарисовка и ATSUI фреймворков в предыдущих версиях Mac OS X. Согласно Apple, Core Text «разработан для обеспечения высокой производительности и простоты использования», а его API разметки «прост, согласован и тесно интегрирован с Core Foundation, Core Graphics и Cocoa».[1]
Функции
Core Text предоставляет следующие непрозрачные типы:
- CTFramesetter - создает объекты CTFrame из заданного строкового объекта с атрибутами и объекта CGPath с помощью CTTypesetter.
- CTTypesetter - выполняет линейные раскладки; например, разрыв строки
- CTFrame - представляет собой массив строк (т.е. объекты CTLine).
- CTLine - представляет собой массив пробегов глифов.
- CTRun - упорядоченный набор глифов с одним и тем же атрибутом.
- CTFont - представляет собой шрифт.
Пример
Следующий код отображает текст «Hello, World!» к заданному графическому контексту.
// Подготавливаем шрифтCTFontRef шрифт = CTFontCreateWithName(CFSTR("Times"), 48, НОЛЬ);// Создаем строку с атрибутамиCFStringRef ключи[] = { kCTFontAttributeName };CFTypeRef значения[] = { шрифт };CFDictionaryRef attr = CFDictionaryCreate(НОЛЬ, (const пустота **)&ключи, (const пустота **)&значения, размер(ключи) / размер(ключи[0]), &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);CFAttributedStringRef attrString = CFAttributedStringCreate(НОЛЬ, CFSTR("Привет, мир!"), attr);CFRelease(attr);// Рисуем строкуCTLineRef линия = CTLineCreateWithAttributedString(attrString);CGContextSetTextMatrix(контекст, CGAffineTransformIdentity); // Используйте это при использовании стандартных координат представления// CGContextSetTextMatrix (контекст, CGAffineTransformMakeScale (1.0, -1.0)); // Используйте это, если координаты представления переворачиваютсяCGContextSetTextPosition(контекст, 10, 20);CTLineDraw(линия, контекст);// ОчиститьCFRelease(линия);CFRelease(attrString);CFRelease(шрифт);
Рекомендации
внешняя ссылка
Эта статья о Macintosh заглушка. Вы можете помочь Википедии расширяя это. |