advertisement

Введение в Core Text

63 %
38 %
advertisement
Information about Введение в Core Text
Technology

Published on March 3, 2014

Author: opedge

Source: slideshare.net

advertisement

Введение в Core Text

Core Text API • Mac • iOS OS X 10.5 3.2

Зачем вообще это надо? • Любые кастомные layouts • Полный контроль за отрисовкой текста • Доступ к элементарным частям и управление ими

Glyph • 1 символ - 1 глиф (a, b, c…) • 1 символ - N глифов (FunCity) • N символов - 1 глиф (emoji)

Glyph • Глиф - единица графики • Символ - единица текста

Glyph Metrics • Ascent • Descent • Leading

Контекст Core Text • CoreText обычно в паре с CoreGraphics • Определяем • Начало drawRect:…. координат - слева внизу • Контекст надо флипать перед отрисовкой CGContextScaleCTM, CGContextTranslateCTM

Основные абстракции CTFramesetter, CTFrame, CTTypesetter

CTFramesetter • Создает объекты для отрисовки • Расчитывает размеры текста

CTFrame • Область текста в заданной CGPath - прямоугольник, эллипс, etc • Фрейм можно отрисовать в CG контексте

CTTypesetter • Определяет как будет выглядеть CTFrame • Алгоритмы переносов, алгоритмы вписывания в CGPath

Остальные примитивы • CTLine - как ни странно строка текста, можно рендерить в контекст отдельно • CTRun - самый мелкий примитив, набор символов с одинаковым стилем

Форматирование текста • NSAttributedString - основа всего (CFAttributedString) • Можно миксовать шрифты, цвета, кегль, baseline, linespacing, etc • Все параметры задаются через dictionary (toll-free bridging)

Бонус!

CTRunDelegate • Набор callback’ов для отображения конкретного CTRun • Можно оставлять места под элементы, которые будут отрендерены позднее (CoreGraphics, UIKit, etc) - кастомные глифы • Задается с помощью того же attributes dictionary в NSAttributedString

Add a comment

Related presentations

Presentación que realice en el Evento Nacional de Gobierno Abierto, realizado los ...

In this presentation we will describe our experience developing with a highly dyna...

Presentation to the LITA Forum 7th November 2014 Albuquerque, NM

Un recorrido por los cambios que nos generará el wearabletech en el futuro

Um paralelo entre as novidades & mercado em Wearable Computing e Tecnologias Assis...

Microsoft finally joins the smartwatch and fitness tracker game by introducing the...

Related pages

«Введение» в докторской диссертации (пример текста ...

«Введение» в докторской диссертации ... Powered by SD Core. All rights reserved. Безопасность: Antivirus Kaspersky.
Read more

Введение в ASP.NET MVC - mva.microsoft.com

Введение в ASP.NET MVC. Microsoft Virtual Academy Courses. Courses. Live Events. Books. By ... Introduction to ASP.NET Core 1.0
Read more

Zenbook. Введение в тему — Наш ... - alv.me

Text; O фис; Инет; Utils ... Введение в ... Zenwalk распространяются еще и в виде так называемой Core ...
Read more

Введение в Тэг-хелперы (Tag Helpers) — Документация ASP ...

Введение в Тэг-хелперы ... Если вы создаете новое ASP.NET Core ... Read more

Введение в веб-платформу Google Web Toolkit – учебный курс ...

... import com.google.gwt.core ... 704968; text-decoration: none; } Теперь в редакторе ... Введение в веб ...
Read more

Browse | Coursera

Browse hundreds of courses and specializations in Business, Computer Science, Arts, Humanities, and more. 1000+ courses from schools like Stanford and Yale ...
Read more

Windows.Data.Xml.Xsl Namespace (Windows)

Введение в работу с ... Windows.UI.Text.Core. Windows.UI ... Windows.Phone.System.UserProfile.GameServices.Core.
Read more

Introduction to Logic - Stanford University | Coursera

Introduction to Logic from Stanford University. This course is an introduction to Logic from a computational perspective. It shows how to encode ...
Read more