⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cairo-paths.xml

📁 按照官方的说法:Cairo is a vector graphics library with cross-device output support. 翻译过来
💻 XML
📖 第 1 页 / 共 2 页
字号:
<?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-Paths"><refmeta><refentrytitle id="top_of_page">Paths</refentrytitle><manvolnum>3</manvolnum><refmiscinfo>CAIRO Library</refmiscinfo></refmeta><refnamediv><refname>Paths</refname><refpurpose>Creating paths and manipulating path data</refpurpose><!--[<xref linkend="desc" endterm="desc.title"/>]--></refnamediv><refsynopsisdiv id="synopsis"><title id="synopsis.title">Synopsis</title><synopsis>            <link linkend="cairo-path-t">cairo_path_t</link>;union       <link linkend="cairo-path-data-t">cairo_path_data_t</link>;enum        <link linkend="cairo-path-data-type-t">cairo_path_data_type_t</link>;<link linkend="cairo-path-t">cairo_path_t</link>* <link linkend="cairo-copy-path">cairo_copy_path</link>               (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="cairo-path-t">cairo_path_t</link>* <link linkend="cairo-copy-path-flat">cairo_copy_path_flat</link>          (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="void">void</link>        <link linkend="cairo-path-destroy">cairo_path_destroy</link>              (<link linkend="cairo-path-t">cairo_path_t</link> *path);<link linkend="void">void</link>        <link linkend="cairo-append-path">cairo_append_path</link>               (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="cairo-path-t">cairo_path_t</link> *path);<link linkend="void">void</link>        <link linkend="cairo-get-current-point">cairo_get_current_point</link>         (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> *x,                                             <link linkend="double">double</link> *y);<link linkend="void">void</link>        <link linkend="cairo-new-path">cairo_new_path</link>                  (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="void">void</link>        <link linkend="cairo-new-sub-path">cairo_new_sub_path</link>              (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="void">void</link>        <link linkend="cairo-close-path">cairo_close_path</link>                (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="void">void</link>        <link linkend="cairo-arc">cairo_arc</link>                       (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> xc,                                             <link linkend="double">double</link> yc,                                             <link linkend="double">double</link> radius,                                             <link linkend="double">double</link> angle1,                                             <link linkend="double">double</link> angle2);<link linkend="void">void</link>        <link linkend="cairo-arc-negative">cairo_arc_negative</link>              (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> xc,                                             <link linkend="double">double</link> yc,                                             <link linkend="double">double</link> radius,                                             <link linkend="double">double</link> angle1,                                             <link linkend="double">double</link> angle2);<link linkend="void">void</link>        <link linkend="cairo-curve-to">cairo_curve_to</link>                  (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> x1,                                             <link linkend="double">double</link> y1,                                             <link linkend="double">double</link> x2,                                             <link linkend="double">double</link> y2,                                             <link linkend="double">double</link> x3,                                             <link linkend="double">double</link> y3);<link linkend="void">void</link>        <link linkend="cairo-line-to">cairo_line_to</link>                   (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> x,                                             <link linkend="double">double</link> y);<link linkend="void">void</link>        <link linkend="cairo-move-to">cairo_move_to</link>                   (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> x,                                             <link linkend="double">double</link> y);<link linkend="void">void</link>        <link linkend="cairo-rectangle">cairo_rectangle</link>                 (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> x,                                             <link linkend="double">double</link> y,                                             <link linkend="double">double</link> width,                                             <link linkend="double">double</link> height);<link linkend="void">void</link>        <link linkend="cairo-glyph-path">cairo_glyph_path</link>                (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="cairo-glyph-t">cairo_glyph_t</link> *glyphs,                                             <link linkend="int">int</link> num_glyphs);<link linkend="void">void</link>        <link linkend="cairo-text-path">cairo_text_path</link>                 (<link linkend="cairo-t">cairo_t</link> *cr,                                             const <link linkend="char">char</link> *utf8);<link linkend="void">void</link>        <link linkend="cairo-rel-curve-to">cairo_rel_curve_to</link>              (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> dx1,                                             <link linkend="double">double</link> dy1,                                             <link linkend="double">double</link> dx2,                                             <link linkend="double">double</link> dy2,                                             <link linkend="double">double</link> dx3,                                             <link linkend="double">double</link> dy3);<link linkend="void">void</link>        <link linkend="cairo-rel-line-to">cairo_rel_line_to</link>               (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> dx,                                             <link linkend="double">double</link> dy);<link linkend="void">void</link>        <link linkend="cairo-rel-move-to">cairo_rel_move_to</link>               (<link linkend="cairo-t">cairo_t</link> *cr,                                             <link linkend="double">double</link> dx,                                             <link linkend="double">double</link> dy);</synopsis></refsynopsisdiv><refsect1 id="desc"><title id="desc.title">Description</title><para></para></refsect1><refsect1 id="details"><title id="details.title">Details</title><refsect2><title><anchor id="cairo-path-t" role="struct"/>cairo_path_t</title><indexterm><primary>cairo_path_t</primary></indexterm><programlisting>typedef struct {    cairo_status_t status;    cairo_path_data_t *data;    int num_data;} cairo_path_t;</programlisting><para>A data structure for holding a path. This data structure serves asthe return value for <link linkend="cairo-copy-path-data"><function>cairo_copy_path_data()</function></link> and<link linkend="cairo-copy-path-data-flat"><function>cairo_copy_path_data_flat()</function></link> as well the input value for<link linkend="cairo-append-path"><function>cairo_append_path()</function></link>.</para><para>See <link linkend="cairo-path-data-t"><type>cairo_path_data_t</type></link> for hints on how to iterate over theactual data within the path.</para><para>The num_data member gives the number of elements in the dataarray. This number is larger than the number of independent pathportions (defined in <link linkend="cairo-path-data-type-t"><type>cairo_path_data_type_t</type></link>), since the dataincludes both headers and coordinates for each portion.</para><para></para><variablelist role="struct"><varlistentry><term><link linkend="cairo-status-t">cairo_status_t</link>&nbsp;<structfield>status</structfield>;</term><listitem><simpara> the current error status</simpara></listitem></varlistentry><varlistentry><term><link linkend="cairo-path-data-t">cairo_path_data_t</link>&nbsp;*<structfield>data</structfield>;</term><listitem><simpara> the elements in the path</simpara></listitem></varlistentry><varlistentry><term><link linkend="int">int</link>&nbsp;<structfield>num_data</structfield>;</term><listitem><simpara> the number of elements in the data array</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="cairo-path-data-t" role="union"/>union cairo_path_data_t</title><indexterm><primary>cairo_path_data_t</primary></indexterm><programlisting>union cairo_path_data_t {    struct {	cairo_path_data_type_t type;	int length;    } header;    struct {	double x, y;    } point;};</programlisting><para><link linkend="cairo-path-data-t"><type>cairo_path_data_t</type></link> is used to represent the path data inside a<link linkend="cairo-path-t"><type>cairo_path_t</type></link>.</para><para>The data structure is designed to try to balance the demands ofefficiency and ease-of-use. A path is represented as an array of<link linkend="cairo-path-data-t"><type>cairo_path_data_t</type></link>, which is a union of headers and points.</para><para>Each portion of the path is represented by one or more elements inthe array, (one header followed by 0 or more points). The lengthvalue of the header is the number of array elements for the currentportion including the header, (ie. length == 1 + # of points), andwhere the number of points for each element type must be asfollows:</para><para><programlisting>    <link linkend="CAIRO-PATH-MOVE-TO:CAPS"><literal>CAIRO_PATH_MOVE_TO</literal></link>:     1 point    <link linkend="CAIRO-PATH-LINE-TO:CAPS"><literal>CAIRO_PATH_LINE_TO</literal></link>:     1 point

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -