От печатного издательства — к электронному: CoreText в помощь

IT-копирайтер
Время чтения: 5 минут
В этой статье мы расскажем о преимуществах использования фреймворка Core Text при разработке электронных версий газет, книг и журналов для iPad. Эта технология уже была успешно использована нашей компанией при реализации нескольких проектов в сфере электронного издательства. Core Text пригодится тем, кто еще только планирует переводить свою печатную продукцию на новый, электронный, уровень или собирается запустить электронное издательство с нуля.
Почему мы считаем, что Core Text — удобный, а, главное, наиболее перспективный инструмент электронного издательства на iPad?
Причина 1. Core Text предоставляет широкие возможности верстки текста
С помощью объекта NSAttributedString в Core Text можно применять любые варианты форматирования текста:
- менять шрифт, его размер, цвет и стиль (жирный, курсив);
- устанавливать настройки абзацев: отступы справа, слева, снизу, сверху, отступ от первой строки;
- менять цвет фона.
Можно преобразовывать знаки в глифы, графическое представление конкретного знака. Например, создавать такие глифы знака «А»:
Пример взят из Core Text Programming Guide от Apple.
Причина 2. Core Text позволяет экспериментировать с расположением текста
- Core Text допускает обтекание текстом сложных границ:
- позволяет фигурное оформление текста: придание тексту формы треугольника и окружности, разбивка по столбцам, по кругу, и более сложные формы.
На заметку разработчикам: для выполнения этой задачи сначала c помощью методов объекта CGMutablePathRefpath = CGPathCreateMutable() нужно создать shape. Затем использовать выбранный path для создания объекта CTFrame, куда непосредственно и будет вводиться текст.
Причина 3. Core Text может сделать текст мультимедийным
Размещение аудио- и видеоматериала на странице происходит без ущерба качеству графики и скорости отображения данных.
Отметим, что среди существующих технологий для отображения электронного контента возможность добавлять медиаэлементы на страницу помимо Core Text предлагает только WebView. Но не стоит забывать, что WebView — это, по сути своей, аналог браузера, и запуск нескольких элементов WebView для системы будет равнозначен запуску нескольких мини-браузеров, что не может не сказаться на скорости работы приложения.
Причина 4. Core Text предлагает уникальные условия для ввода и обработки данных
- Простота ввода материала: текст заносится непосредственно на страницу, без использования промежуточных технологий. Например, в WebView нужно дополнительно прибегать к HTML и CSS.
- Высокая скорость рендеринга, т. е. текст быстро обрабатывается и выводится на экран мобильного устройства. На данный момент это, пожалуй, самый быстрый способ рендеринга для iOS-приложений.
Низкая скорость обработки данных и тяжеловесность контента — главные недостатки таких наиболее распространенных среди электронных изданий технологий, как PDF и WebView. С Core Text вы не испугаете читателей «объемом».
Благодаря тому, что в Core Text применяется векторный рендеринг, качество изображения не ухудшается даже при его значительном увеличении. Это особенно ценно, когда текст сопровождается графиками, таблицами и другими элементами, требующими пристального рассмотрения.
На заметку разработчикам: фреймворк Core Text является достаточно гибкой средой для разработки, так как с его помощью можно решать самые разные задачи. Например, необходимость правильной расстановки переносов в словах. Для решения этой проблемы, мы советуем обратиться к алгоритму Ляна-Кнута для мягких переносов.
Но не все идеально. У Core Text тоже есть свои минусы, а точнее один недостаток свойств: в нем отсутствуют механизмы создания функций копирования и выделения текста. Для выполнения этих задач разработчикам придется самостоятельно придумывать решения.
В заключение — хорошая новость для разработчиков. Теперь атрибуты форматирования Core Text доступны при работе с классами UITextView, UILabel, UIButton, UIPickerView, UITableViewCell и UITextField. Начиная с iOS6, эти классы могут поддерживать объект NSAttributedString, а значит, больше не придется дополнительно обращаться к элементам WebView для форматирования.
Таким образом, технология Core Text — это быстрый и удобный способ для обработки контента. Она идеально подходит для газетных приложений, подразумевающих регулярное обновление материала, и поможет эффективно организовать электронное издательство книг, журналов, каталогов, учебных материалов и т.д.
Если у вас появились вопросы по работе с данной технологией, либо возникли сложности с решением других задач в области представления электронного контента на мобильных устройствах, вы всегда можете нам написать.
Комментарии