Кварц 2D
macOS графическая модель |
---|
![]() |
Рендеринг |
Композитинг |
Quartz 2D рендеринга двумерной графики — это собственный API для платформ macOS и iOS , входящий в состав платформы Core Graphics .
Обзор
[ редактировать ]Quartz 2D доступен для всех сред приложений macOS и iOS и обеспечивает рендеринг растровой графики, текста и векторов, не зависящий от разрешения и устройства, как на экране, так и при подготовке к печати. В его обязанности на графическом уровне входят: [ 1 ]
- Рендеринг текста
- Отображение, управление и рендеринг PDF- документов
- Преобразование данных PostScript в данные PDF и наоборот
- Отображение, управление и рендеринг растровых изображений
- Обеспечение управления цветом через ColorSync
- Отображение элементов Aqua пользовательского интерфейса
Поскольку Quartz 2D является одной из нескольких кварцевых технологий, термин «Кварц» сам по себе следует понимать в контексте.
Рисование в Quartz 2D
[ редактировать ]Quartz 2D расширяет функции рисования, связанные с QuickDraw . Наиболее заметное отличие заключается в том, что Quartz 2D исключает специфичность устройства вывода и разрешения.
Модель чертежа, используемая Quartz 2D, основана на спецификации PDF 1.4. [ 2 ] Рисование происходит с использованием декартовой системы координат , где текст, векторы или растровые изображения размещаются на сетке. [ 3 ] Однако выходные данные чертежа не отправляются непосредственно на устройство вывода. Quartz 2D использует графические контексты, среды, в которых происходит рисование. Каждый графический контекст определяет, как должен быть представлен рисунок: в окне, отправлен на принтер, на уровне OpenGL или за кадром. Каждый контекст растрирует рисунок с желаемым разрешением без изменения данных, определяющих рисунок. Таким образом, контексты — это механизм, с помощью которого Quartz 2D использует независимость от разрешения и устройства. Например, контекст окна может растрировать объект до соответствующего разрешения экрана для создания реальной графики на дисплее. Тот же объект можно отправить в контекст печати с гораздо более высоким разрешением. Это позволяет одним и тем же графическим командам выводить результат на любое устройство с наиболее подходящим разрешением. [ 4 ]
История
[ редактировать ]Quartz 2D похож на NeXT от Display PostScript в использовании контекстов. Впервые она появилась как библиотека рендеринга 2D-графики под названием Core Graphics Rendering; вместе с Core Graphics Services (композитинг) он был включен в первоначальную версию Quartz. [ 5 ] Quartz (и его рендерер) впервые были продемонстрированы на WWDC в мае 1999 года. [ 6 ]
В настоящее время название Quartz 2D более точно определяет возможности 2D-рендеринга Core Graphics (Quartz). С выпуском Mac OS X 10.2 внимание маркетинга сосредоточилось на Quartz Extreme , слое композиции, оставив термин «Кварц» для обозначения инфраструктуры Core Graphics или просто ее средства 2D-рендеринга. В настоящее время технологии Quartz могут описывать все технологии рендеринга и композитинга, представленные в macOS (включая, Core Image например, ).
До Mac OS X Tiger рендеринг QuickDraw превосходил рендеринг Quartz 2D. В Mac OS X 10.4 это было исправлено, существенно увеличив стандартную производительность рендеринга Quartz 2D. [ 7 ] Tiger также представил Quartz 2D Extreme: дополнительное ускорение графического процессора (GPU) для Quartz 2D, хотя это официально не поддерживаемая функция. [ 7 ] Quartz 2D Extreme по умолчанию отключен в Mac OS X 10.4, поскольку это может привести к проблемам с перерисовкой видео или панике ядра. [ 8 ] В Mac OS X Leopard Quartz 2D Extreme был переименован в QuartzGL.
См. также
[ редактировать ]- Кварц (графический слой)
- Кварцевый композитор
- QuickDraw
- Отображение PostScript
- Основное изображение
- Директ2D
Ссылки
[ редактировать ]- ^ «Apple – Разработчик – Руководство по программированию Quartz 2D» . Проверено 28 марта 2012 г.
- ^ «Apple – Разработчик – Обзор графики и изображений» . Проверено 25 января 2007 г.
- ^ «Apple – Разработчик – Руководство по программированию Quartz для разработчиков QuickDraw: Координатное пространство» . Архивировано из оригинала 11 октября 2008 года . Проверено 25 января 2007 г.
- ^ «Apple – Разработчик – Руководство по программированию Quartz для разработчиков QuickDraw: места назначения рисования» . Архивировано из оригинала 5 сентября 2008 года . Проверено 25 января 2007 г.
- ^ «Арс Техника — Mac OS X DP4» . Проверено 25 января 2007 г.
- ^ «Ars Technica — Обновление Mac OS X: Quartz и Aqua» . Проверено 25 января 2007 г.
- ^ Перейти обратно: а б Mac OS X 10.4 Тигр | Арс Техника
- ^ «Apple – Информация – Документы – Об обновлении Mac OS X 10.4.3 (Delta)» . Архивировано из оригинала 16 октября 2007 г. Проверено 19 августа 2007 г.
Внешние ссылки
[ редактировать ]- Mac OS X – Возможности – Quartz Extreme – от Apple
- Введение в Руководство по программированию Quartz 2D — документация для разработчиков от Apple
- Введение в Quartz 2D для программистов QuickDraw - документация для разработчиков из MacDevCenter O'Reilly