summaryrefslogtreecommitdiff
path: root/doc/public/xml/cairo-quartz.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/public/xml/cairo-quartz.xml')
-rw-r--r--doc/public/xml/cairo-quartz.xml193
1 files changed, 193 insertions, 0 deletions
diff --git a/doc/public/xml/cairo-quartz.xml b/doc/public/xml/cairo-quartz.xml
new file mode 100644
index 000000000..292c7140b
--- /dev/null
+++ b/doc/public/xml/cairo-quartz.xml
@@ -0,0 +1,193 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [
+<!ENTITY version SYSTEM "version.xml">
+]>
+<refentry id="cairo-Quartz-Surfaces">
+<refmeta>
+<refentrytitle role="top_of_page" id="cairo-Quartz-Surfaces.top_of_page">Quartz Surfaces</refentrytitle>
+<manvolnum>3</manvolnum>
+<refmiscinfo>
+ CAIRO Library
+</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>Quartz Surfaces</refname>
+<refpurpose>Rendering to Quartz surfaces</refpurpose>
+</refnamediv>
+
+<refsect1 id="cairo-Quartz-Surfaces.functions" role="functions_proto">
+<title role="functions_proto.title">Functions</title>
+<informaltable pgwide="1" frame="none">
+<tgroup cols="2">
+<colspec colname="functions_return" colwidth="150px"/>
+<colspec colname="functions_name"/>
+<tbody>
+<row><entry role="function_type"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+</entry><entry role="function_name"><link linkend="cairo-quartz-surface-create">cairo_quartz_surface_create</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+</entry><entry role="function_name"><link linkend="cairo-quartz-surface-create-for-cg-context">cairo_quartz_surface_create_for_cg_context</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+<row><entry role="function_type"><link linkend="CGContextRef"><returnvalue>CGContextRef</returnvalue></link>
+</entry><entry role="function_name"><link linkend="cairo-quartz-surface-get-cg-context">cairo_quartz_surface_get_cg_context</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
+
+</tbody>
+</tgroup>
+</informaltable>
+</refsect1>
+<refsect1 id="cairo-Quartz-Surfaces.other" role="other_proto">
+<title role="other_proto.title">Types and Values</title>
+<informaltable role="enum_members_table" pgwide="1" frame="none">
+<tgroup cols="2">
+<colspec colname="name" colwidth="150px"/>
+<colspec colname="description"/>
+<tbody>
+<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="CAIRO-HAS-QUARTZ-SURFACE:CAPS">CAIRO_HAS_QUARTZ_SURFACE</link></entry></row>
+
+</tbody>
+</tgroup>
+</informaltable>
+</refsect1>
+<refsect1 id="cairo-Quartz-Surfaces.object-hierarchy" role="object_hierarchy">
+<title role="object_hierarchy.title">Object Hierarchy</title>
+<screen>
+</screen>
+</refsect1>
+
+
+<refsect1 id="cairo-Quartz-Surfaces.description" role="desc">
+<title role="desc.title">Description</title>
+<para>The Quartz surface is used to render cairo graphics targeting the
+Apple OS X Quartz rendering system.</para>
+
+</refsect1>
+<refsect1 id="cairo-Quartz-Surfaces.functions_details" role="details">
+<title role="details.title">Functions</title>
+<refsect2 id="cairo-quartz-surface-create" role="function" condition="since:1.6">
+<title>cairo_quartz_surface_create&#160;()</title>
+<indexterm zone="cairo-quartz-surface-create" role="1.6"><primary sortas="quartz_surface_create">cairo_quartz_surface_create</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+cairo_quartz_surface_create (<parameter><link linkend="cairo-format-t"><type>cairo_format_t</type></link> format</parameter>,
+ <parameter>unsigned <link linkend="int"><type>int</type></link> width</parameter>,
+ <parameter>unsigned <link linkend="int"><type>int</type></link> height</parameter>);</programlisting>
+<para>Creates a Quartz surface backed by a CGBitmap. The surface is
+created using the Device RGB (or Device Gray, for A8) color space.
+All Cairo operations, including those that require software
+rendering, will succeed on this surface.</para>
+<refsect3 role="parameters">
+<title>Parameters</title>
+<informaltable role="parameters_table" pgwide="1" frame="none">
+<tgroup cols="3">
+<colspec colname="parameters_name" colwidth="150px"/>
+<colspec colname="parameters_description"/>
+<colspec colname="parameters_annotations" colwidth="200px"/>
+<tbody>
+<row><entry role="parameter_name"><para>format</para></entry>
+<entry role="parameter_description"><para>format of pixels in the surface to create</para></entry>
+<entry role="parameter_annotations"></entry></row>
+<row><entry role="parameter_name"><para>width</para></entry>
+<entry role="parameter_description"><para>width of the surface, in pixels</para></entry>
+<entry role="parameter_annotations"></entry></row>
+<row><entry role="parameter_name"><para>height</para></entry>
+<entry role="parameter_description"><para>height of the surface, in pixels</para></entry>
+<entry role="parameter_annotations"></entry></row>
+</tbody></tgroup></informaltable>
+</refsect3><refsect3 role="returns">
+<title>Returns</title>
+<para> the newly created surface.</para>
+<para></para>
+</refsect3><para role="since">Since 1.6</para></refsect2>
+<refsect2 id="cairo-quartz-surface-create-for-cg-context" role="function" condition="since:1.6">
+<title>cairo_quartz_surface_create_for_cg_context&#160;()</title>
+<indexterm zone="cairo-quartz-surface-create-for-cg-context" role="1.6"><primary sortas="quartz_surface_create_for_cg_context">cairo_quartz_surface_create_for_cg_context</primary></indexterm>
+<programlisting language="C"><link linkend="cairo-surface-t"><returnvalue>cairo_surface_t</returnvalue></link>&#160;*
+cairo_quartz_surface_create_for_cg_context
+ (<parameter><link linkend="CGContextRef"><type>CGContextRef</type></link> cgContext</parameter>,
+ <parameter>unsigned <link linkend="int"><type>int</type></link> width</parameter>,
+ <parameter>unsigned <link linkend="int"><type>int</type></link> height</parameter>);</programlisting>
+<para>Creates a Quartz surface that wraps the given CGContext. The
+CGContext is assumed to be in the standard Cairo coordinate space
+(that is, with the origin at the upper left and the Y axis
+increasing downward). If the CGContext is in the Quartz coordinate
+space (with the origin at the bottom left), then it should be
+flipped before this function is called. The flip can be accomplished
+using a translate and a scale; for example:</para>
+<informalexample><programlisting>
+CGContextTranslateCTM (cgContext, 0.0, height);
+CGContextScaleCTM (cgContext, 1.0, -1.0);
+</programlisting></informalexample>
+<para>All Cairo operations are implemented in terms of Quartz operations,
+as long as Quartz-compatible elements are used (such as Quartz fonts).</para>
+<refsect3 role="parameters">
+<title>Parameters</title>
+<informaltable role="parameters_table" pgwide="1" frame="none">
+<tgroup cols="3">
+<colspec colname="parameters_name" colwidth="150px"/>
+<colspec colname="parameters_description"/>
+<colspec colname="parameters_annotations" colwidth="200px"/>
+<tbody>
+<row><entry role="parameter_name"><para>cgContext</para></entry>
+<entry role="parameter_description"><para>the existing CGContext for which to create the surface</para></entry>
+<entry role="parameter_annotations"></entry></row>
+<row><entry role="parameter_name"><para>width</para></entry>
+<entry role="parameter_description"><para>width of the surface, in pixels</para></entry>
+<entry role="parameter_annotations"></entry></row>
+<row><entry role="parameter_name"><para>height</para></entry>
+<entry role="parameter_description"><para>height of the surface, in pixels</para></entry>
+<entry role="parameter_annotations"></entry></row>
+</tbody></tgroup></informaltable>
+</refsect3><refsect3 role="returns">
+<title>Returns</title>
+<para> the newly created Cairo surface.</para>
+<para></para>
+</refsect3><para role="since">Since 1.6</para></refsect2>
+<refsect2 id="cairo-quartz-surface-get-cg-context" role="function" condition="since:1.6">
+<title>cairo_quartz_surface_get_cg_context&#160;()</title>
+<indexterm zone="cairo-quartz-surface-get-cg-context" role="1.6"><primary sortas="quartz_surface_get_cg_context">cairo_quartz_surface_get_cg_context</primary></indexterm>
+<programlisting language="C"><link linkend="CGContextRef"><returnvalue>CGContextRef</returnvalue></link>
+cairo_quartz_surface_get_cg_context (<parameter><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link> *surface</parameter>);</programlisting>
+<para>Returns the CGContextRef that the given Quartz surface is backed
+by.</para>
+<para>A call to <link linkend="cairo-surface-flush"><function>cairo_surface_flush()</function></link> is required before using the
+CGContextRef to ensure that all pending drawing operations are
+finished and to restore any temporary modification cairo has made
+to its state. A call to <link linkend="cairo-surface-mark-dirty"><function>cairo_surface_mark_dirty()</function></link> is required
+after the state or the content of the CGContextRef has been
+modified.</para>
+<refsect3 role="parameters">
+<title>Parameters</title>
+<informaltable role="parameters_table" pgwide="1" frame="none">
+<tgroup cols="3">
+<colspec colname="parameters_name" colwidth="150px"/>
+<colspec colname="parameters_description"/>
+<colspec colname="parameters_annotations" colwidth="200px"/>
+<tbody>
+<row><entry role="parameter_name"><para>surface</para></entry>
+<entry role="parameter_description"><para>the Cairo Quartz surface</para></entry>
+<entry role="parameter_annotations"></entry></row>
+</tbody></tgroup></informaltable>
+</refsect3><refsect3 role="returns">
+<title>Returns</title>
+<para> the CGContextRef for the given surface.</para>
+<para></para>
+</refsect3><para role="since">Since 1.6</para></refsect2>
+
+</refsect1>
+<refsect1 id="cairo-Quartz-Surfaces.other_details" role="details">
+<title role="details.title">Types and Values</title>
+<refsect2 id="CAIRO-HAS-QUARTZ-SURFACE:CAPS" role="macro" condition="since:1.6">
+<title>CAIRO_HAS_QUARTZ_SURFACE</title>
+<indexterm zone="CAIRO-HAS-QUARTZ-SURFACE:CAPS" role="1.6"><primary sortas="HAS_QUARTZ_SURFACE">CAIRO_HAS_QUARTZ_SURFACE</primary></indexterm>
+<programlisting language="C">#define CAIRO_HAS_QUARTZ_SURFACE 1
+</programlisting>
+<para>Defined if the Quartz surface backend is available.
+This macro can be used to conditionally compile backend-specific code.</para>
+<para role="since">Since 1.6</para></refsect2>
+
+</refsect1>
+<refsect1 id="cairo-Quartz-Surfaces.see-also">
+<title>See Also</title>
+<para><link linkend="cairo-surface-t"><type>cairo_surface_t</type></link></para>
+
+</refsect1>
+
+</refentry>