Cuarzo 2D

Quartz 2D es la API de renderizado de gráficos bidimensionales nativa para plataformas macOS e iOS , parte del marco Core Graphics .

Descripción general

Quartz 2D está disponible para todos los entornos de aplicaciones de macOS e iOS y ofrece una representación independiente de la resolución y del dispositivo de gráficos de mapa de bits, texto y vectores, tanto en pantalla como en preparación para la impresión. Sus responsabilidades dentro de la capa de gráficos incluyen: [1]

  • Representación de texto
  • Visualización, manipulación y renderización de documentos PDF
  • Conversión de datos PostScript a datos PDF y viceversa
  • Visualización, manipulación y renderización de imágenes de mapa de bits
  • Proporcionar gestión de color a través de ColorSync
  • Visualización de los elementos de la interfaz de usuario de Aqua

Dado que Quartz 2D es una de varias tecnologías de cuarzo, el término "Cuarzo" en sí mismo debe tomarse en contexto.

Dibujo en Quartz 2D

Quartz 2D amplía las funciones de dibujo asociadas con QuickDraw . La diferencia más notable es que Quartz 2D elimina la especificidad del dispositivo de salida y la resolución.

El modelo de dibujo utilizado por Quartz 2D se basa en la especificación PDF 1.4. [2] El dibujo se realiza utilizando un sistema de coordenadas cartesianas , donde el texto, los vectores o las imágenes de mapa de bits se colocan en una cuadrícula. [3] Sin embargo, la salida del dibujo no se envía directamente al dispositivo de salida. Quartz 2D utiliza contextos gráficos, entornos en los que se realiza el dibujo. Cada contexto gráfico define cómo debe presentarse el dibujo: en una ventana, enviado a una impresora, una capa OpenGL o fuera de la pantalla. Cada contexto rasteriza el dibujo a la resolución deseada sin alterar los datos que definen el dibujo. Por lo tanto, los contextos son el mecanismo por el cual Quartz 2D emplea la independencia de la resolución y del dispositivo. Por ejemplo, un contexto de ventana puede rasterizar un objeto a la resolución de pantalla adecuada para crear gráficos reales en la pantalla. El mismo objeto se puede enviar a un contexto de impresión a una resolución mucho mayor. Esto permite que los mismos comandos gráficos produzcan una salida en cualquier dispositivo que utilice la resolución más adecuada. [4]

Historia

Quartz 2D es similar a Display PostScript de NeXT en su uso de contextos. Apareció por primera vez como la biblioteca de renderizado de gráficos 2D llamada Core Graphics Rendering; junto con Core Graphics Services (Compositing), se incluyó en la encarnación inicial de Quartz. [5] Quartz (y su renderizador) se mostraron por primera vez en la WWDC en mayo de 1999. [6]

Actualmente, el nombre Quartz 2D define con mayor precisión las capacidades de renderizado 2D de Core Graphics (Quartz). Con el lanzamiento de Mac OS X 10.2, la atención de marketing se centró en Quartz Extreme , la capa de composición, dejando el término "Quartz" para referirse al marco Core Graphics o simplemente a su renderizador 2D. Actualmente, las tecnologías Quartz pueden describir todas las tecnologías de renderizado y composición introducidas por macOS (incluido Core Image , por ejemplo).

Antes de Mac OS X Tiger, el renderizado de QuickDraw superaba al de Quartz 2D. Mac OS X 10.4 corrigió esto, aumentando sustancialmente el rendimiento de renderizado estándar de Quartz 2D. [7] Tiger también introdujo Quartz 2D Extreme: aceleración del procesador gráfico (GPU) opcional para Quartz 2D, aunque no es una función oficialmente compatible. [7] Quartz 2D Extreme está deshabilitado de forma predeterminada en Mac OS X 10.4 porque puede provocar problemas de redibujado de video o pánicos del kernel. [8] En Mac OS X Leopard, Quartz 2D Extreme pasó a llamarse QuartzGL.

Véase también

Referencias

  1. ^ "Apple - Developer - Quartz 2D Programming Guide" (Guía de programación de Quartz 2D para desarrolladores de Apple) . Consultado el 28 de marzo de 2012 .
  2. ^ "Apple - Desarrollador - Descripción general de gráficos e imágenes" . Consultado el 25 de enero de 2007 .
  3. ^ "Apple - Developer - Quartz Programming Guide for QuickDraw Developers: Coordinate Space". Archivado desde el original el 11 de octubre de 2008. Consultado el 25 de enero de 2007 .
  4. ^ "Apple - Developer - Quartz Programming Guide for QuickDraw Developers: Drawing Destinations" (Guía de programación de Apple para desarrolladores de QuickDraw: destinos de dibujo). Archivado desde el original el 5 de septiembre de 2008. Consultado el 25 de enero de 2007 .
  5. ^ "Ars Technica - Mac OS X DP4" . Consultado el 25 de enero de 2007 .
  6. ^ "Ars Technica - Actualización de Mac OS X: Quartz y Aqua" . Consultado el 25 de enero de 2007 .
  7. ^ ab Mac OS X 10.4 Tigre | Ars Técnica
  8. ^ "Apple - Información - Documentos - Acerca de la actualización de Mac OS X 10.4.3 (Delta)". Archivado desde el original el 16 de octubre de 2007. Consultado el 19 de agosto de 2007 .
  • Mac OS X – Características – Quartz Extreme – de Apple
  • Introducción a la guía de programación Quartz 2D: documentación para desarrolladores de Apple
  • Introducción a Quartz 2D para programadores de QuickDraw: documentación para desarrolladores del MacDevCenter de O'Reilly
Obtenido de "https://es.wikipedia.org/w/index.php?title=Cuarzo_2D&oldid=1049754516"