В чем разница между Quartz Core, Core Graphics и Quartz 2D?



интересно, если кто-то может точно различать между ними?
Для моего понимания, графическое ядро-это просто "рамочный пакет", который содержит кварцевой сердцевиной и кварцевой 2Д. Но я не уверен, если кварц 2Д на самом деле является кварцевой сердцевиной? Может быть, кто-то может нарисовать там какие-то линии? Что составляет различия между ними?



при просмотре документации я вижу, что Quartz Core перечисляет только основные анимационные материалы. Так Кварцевой Сердцевиной == Ключевой Анимации?

580   3  

3 ответов:

с руководство по программированию Quartz 2D:

кварц 2D API является частью ядра Графическая структура, так что вы можете увидеть Кварц называют в качестве основных графика или, просто, СГ.

У меня есть тенденция использовать кварцевую и основную графику взаимозаменяемо при обращении к 2-D рисунку на Mac / iPhone, даже если это технически неверно.

The Quartz Core framework на iPhone содержит классы и вспомогательные элементы для основной анимации, а также содержит элементы, используемые для основного изображения.

Quartz 2D-это API основной графической структуры, которая реализует рисование.
Quartz Core-это платформа, которая включает API для анимации и обработки изображений.


кварцевые фреймворки и их API

CoreGraphics.framework

  • кварц 2D API управляет графическим контекстом и реализует рисование.
  • Кварцевый Услуги API обеспечивает низкоуровневый доступ к серверу окно. Это включает в себя оборудование дисплея, разрешение, частота обновления и другие.

QuartzCore.framework

  • Ядро Анимации: Objective-C API для 2D анимации.
  • Core Image: обработка изображений и видео (фильтры, деформация, переходы).iOS 5

Quartz.framework только OS X

  • Image Kit: отображение и редактирование изображений.
  • PDF Кит: отображение и редактирование PDF-файлов.
  • Кварцевый Композитор: отображение композиций кварцевого композитора.
  • QuickLookUI: предварительный просмотр элементов мультимедиа.

все три фреймворка используют OpenGL внизу, потому что все чертежи в iOS или OS X проходят через OpenGL в какой-то момент. Смотрите раздел Рамки Медиа-Слоя обзор технологии Mac OS X для деталей.

другие технологии "кварца" вы, возможно, слышали оф:

  • кварцевый экстрим: ускорение GPU для кварцевого композитора.
  • QuartzGL (он же " кварц 2D Extreme"): ускорение GPU для Quartz 2D.

это внутренние реализации визуализации с помощью графического процессора, а не интерфейсы. Они решают, следует ли создать буфер окна в ЦП и использовать OpenGL только для загрузки в виде текстуры (по умолчанию) или сделать весь рендеринг с помощью OpenGL, который не всегда повышает производительность. Вы можете чередовать их с помощью QuartzGLEnable информация.установка файла plist. Объяснение см. В обзоре John Siracusa о Mac OS X 10.4 Tiger, pages 13 и 14.

"кварц" и "ядро" - это маркетинговые имена, разбросанные по фреймворкам и API случайным образом. Если они хотели создать запутанный беспорядок именования, они преуспели.

будьте осторожны, однако, новое приложение с одним представлением будет связывать структуру CoreGraphics по умолчанию, но не QuartzCore. Таким образом, вы можете быстро получить ошибку "неизвестный объект", если вы что-то делаете с CAEAGLLayer например.

Comments

    Ничего не найдено.