📄 cairo-text.xml
字号:
<?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-Text"><refmeta><refentrytitle id="top_of_page">Text</refentrytitle><manvolnum>3</manvolnum><refmiscinfo>CAIRO Library</refmiscinfo></refmeta><refnamediv><refname>Text</refname><refpurpose>Rendering text and sets of glyphs</refpurpose><!--[<xref linkend="desc" endterm="desc.title"/>]--></refnamediv><refsynopsisdiv id="synopsis"><title id="synopsis.title">Synopsis</title><synopsis> <link linkend="cairo-glyph-t">cairo_glyph_t</link>;enum <link linkend="cairo-font-slant-t">cairo_font_slant_t</link>;enum <link linkend="cairo-font-weight-t">cairo_font_weight_t</link>;<link linkend="void">void</link> <link linkend="cairo-select-font-face">cairo_select_font_face</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *family, <link linkend="cairo-font-slant-t">cairo_font_slant_t</link> slant, <link linkend="cairo-font-weight-t">cairo_font_weight_t</link> weight);<link linkend="void">void</link> <link linkend="cairo-set-font-size">cairo_set_font_size</link> (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="double">double</link> size);<link linkend="void">void</link> <link linkend="cairo-set-font-matrix">cairo_set_font_matrix</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-matrix-t">cairo_matrix_t</link> *matrix);<link linkend="void">void</link> <link linkend="cairo-get-font-matrix">cairo_get_font_matrix</link> (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-matrix-t">cairo_matrix_t</link> *matrix);<link linkend="void">void</link> <link linkend="cairo-set-font-options">cairo_set_font_options</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-font-options-t">cairo_font_options_t</link> *options);<link linkend="void">void</link> <link linkend="cairo-get-font-options">cairo_get_font_options</link> (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-options-t">cairo_font_options_t</link> *options);<link linkend="void">void</link> <link linkend="cairo-show-text">cairo_show_text</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *utf8);<link linkend="void">void</link> <link linkend="cairo-show-glyphs">cairo_show_glyphs</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="cairo-font-face-t">cairo_font_face_t</link>* <link linkend="cairo-get-font-face">cairo_get_font_face</link> (<link linkend="cairo-t">cairo_t</link> *cr);<link linkend="void">void</link> <link linkend="cairo-font-extents">cairo_font_extents</link> (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-extents-t">cairo_font_extents_t</link> *extents);<link linkend="void">void</link> <link linkend="cairo-set-font-face">cairo_set_font_face</link> (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-face-t">cairo_font_face_t</link> *font_face);<link linkend="void">void</link> <link linkend="cairo-set-scaled-font">cairo_set_scaled_font</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-scaled-font-t">cairo_scaled_font_t</link> *scaled_font);<link linkend="void">void</link> <link linkend="cairo-text-extents">cairo_text_extents</link> (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *utf8, <link linkend="cairo-text-extents-t">cairo_text_extents_t</link> *extents);<link linkend="void">void</link> <link linkend="cairo-glyph-extents">cairo_glyph_extents</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="cairo-text-extents-t">cairo_text_extents_t</link> *extents);</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-glyph-t" role="struct"/>cairo_glyph_t</title><indexterm><primary>cairo_glyph_t</primary></indexterm><programlisting>typedef struct { unsigned long index; double x; double y;} cairo_glyph_t;</programlisting><para>The <link linkend="cairo-glyph-t"><type>cairo_glyph_t</type></link> structure holds information about a single glyphwhen drawing or measuring text. A font is (in simple terms) acollection of shapes used to draw text. A glyph is one of theseshapes. There can be multiple glyphs for a single character(alternates to be used in different contexts, for example), or aglyph can be a <firstterm>ligature</firstterm> of multiplecharacters. Cairo doesn't expose any way of converting input textinto glyphs, so in order to use the Cairo interfaces that takearrays of glyphs, you must directly access the appropriateunderlying font system.</para><para>Note that the offsets given by <parameter>x</parameter> and <parameter>y</parameter> are not cumulative. Whendrawing or measuring text, each glyph is individually positionedwith respect to the overall origin</para><para></para><variablelist role="struct"><varlistentry><term>unsigned <link linkend="long">long</link> <structfield>index</structfield>;</term><listitem><simpara> glyph index in the font. The exact interpretation of the glyph index depends on the font technology being used.</simpara></listitem></varlistentry><varlistentry><term><link linkend="double">double</link> <structfield>x</structfield>;</term><listitem><simpara> the offset in the X direction between the origin used for drawing or measuring the string and the origin of this glyph.</simpara></listitem></varlistentry><varlistentry><term><link linkend="double">double</link> <structfield>y</structfield>;</term><listitem><simpara> the offset in the Y direction between the origin used for drawing or measuring the string and the origin of this glyph.</simpara></listitem></varlistentry></variablelist></refsect2><refsect2><title><anchor id="cairo-font-slant-t" role="enum"/>enum cairo_font_slant_t</title><indexterm><primary>cairo_font_slant_t</primary></indexterm><programlisting>typedef enum _cairo_font_slant { CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_SLANT_ITALIC, CAIRO_FONT_SLANT_OBLIQUE} cairo_font_slant_t;</programlisting><para></para></refsect2><refsect2><title><anchor id="cairo-font-weight-t" role="enum"/>enum cairo_font_weight_t</title><indexterm><primary>cairo_font_weight_t</primary></indexterm><programlisting>typedef enum _cairo_font_weight { CAIRO_FONT_WEIGHT_NORMAL, CAIRO_FONT_WEIGHT_BOLD} cairo_font_weight_t;</programlisting><para></para></refsect2><refsect2><title><anchor id="cairo-select-font-face" role="function"/>cairo_select_font_face ()</title><indexterm><primary>cairo_select_font_face</primary></indexterm><programlisting><link linkend="void">void</link> cairo_select_font_face (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *family, <link linkend="cairo-font-slant-t">cairo_font_slant_t</link> slant, <link linkend="cairo-font-weight-t">cairo_font_weight_t</link> weight);</programlisting></refsect2><refsect2><title><anchor id="cairo-set-font-size" role="function"/>cairo_set_font_size ()</title><indexterm><primary>cairo_set_font_size</primary></indexterm><programlisting><link linkend="void">void</link> cairo_set_font_size (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="double">double</link> size);</programlisting></refsect2><refsect2><title><anchor id="cairo-set-font-matrix" role="function"/>cairo_set_font_matrix ()</title><indexterm><primary>cairo_set_font_matrix</primary></indexterm><programlisting><link linkend="void">void</link> cairo_set_font_matrix (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-matrix-t">cairo_matrix_t</link> *matrix);</programlisting></refsect2><refsect2><title><anchor id="cairo-get-font-matrix" role="function"/>cairo_get_font_matrix ()</title><indexterm><primary>cairo_get_font_matrix</primary></indexterm><programlisting><link linkend="void">void</link> cairo_get_font_matrix (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-matrix-t">cairo_matrix_t</link> *matrix);</programlisting></refsect2><refsect2><title><anchor id="cairo-set-font-options" role="function"/>cairo_set_font_options ()</title><indexterm><primary>cairo_set_font_options</primary></indexterm><programlisting><link linkend="void">void</link> cairo_set_font_options (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-font-options-t">cairo_font_options_t</link> *options);</programlisting></refsect2><refsect2><title><anchor id="cairo-get-font-options" role="function"/>cairo_get_font_options ()</title><indexterm><primary>cairo_get_font_options</primary></indexterm><programlisting><link linkend="void">void</link> cairo_get_font_options (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-options-t">cairo_font_options_t</link> *options);</programlisting></refsect2><refsect2><title><anchor id="cairo-show-text" role="function"/>cairo_show_text ()</title><indexterm><primary>cairo_show_text</primary></indexterm><programlisting><link linkend="void">void</link> cairo_show_text (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *utf8);</programlisting></refsect2><refsect2><title><anchor id="cairo-show-glyphs" role="function"/>cairo_show_glyphs ()</title><indexterm><primary>cairo_show_glyphs</primary></indexterm><programlisting><link linkend="void">void</link> cairo_show_glyphs (<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);</programlisting></refsect2><refsect2><title><anchor id="cairo-get-font-face" role="function"/>cairo_get_font_face ()</title><indexterm><primary>cairo_get_font_face</primary></indexterm><programlisting><link linkend="cairo-font-face-t">cairo_font_face_t</link>* cairo_get_font_face (<link linkend="cairo-t">cairo_t</link> *cr);</programlisting></refsect2><refsect2><title><anchor id="cairo-font-extents" role="function"/>cairo_font_extents ()</title><indexterm><primary>cairo_font_extents</primary></indexterm><programlisting><link linkend="void">void</link> cairo_font_extents (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-extents-t">cairo_font_extents_t</link> *extents);</programlisting></refsect2><refsect2><title><anchor id="cairo-set-font-face" role="function"/>cairo_set_font_face ()</title><indexterm><primary>cairo_set_font_face</primary></indexterm><programlisting><link linkend="void">void</link> cairo_set_font_face (<link linkend="cairo-t">cairo_t</link> *cr, <link linkend="cairo-font-face-t">cairo_font_face_t</link> *font_face);</programlisting></refsect2><refsect2><title><anchor id="cairo-set-scaled-font" role="function" condition="since:1.2"/>cairo_set_scaled_font ()</title><indexterm role="1.2"><primary>cairo_set_scaled_font</primary></indexterm><programlisting><link linkend="void">void</link> cairo_set_scaled_font (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="cairo-scaled-font-t">cairo_scaled_font_t</link> *scaled_font);</programlisting><para>Since 1.2</para></refsect2><refsect2><title><anchor id="cairo-text-extents" role="function"/>cairo_text_extents ()</title><indexterm><primary>cairo_text_extents</primary></indexterm><programlisting><link linkend="void">void</link> cairo_text_extents (<link linkend="cairo-t">cairo_t</link> *cr, const <link linkend="char">char</link> *utf8, <link linkend="cairo-text-extents-t">cairo_text_extents_t</link> *extents);</programlisting></refsect2><refsect2><title><anchor id="cairo-glyph-extents" role="function"/>cairo_glyph_extents ()</title><indexterm><primary>cairo_glyph_extents</primary></indexterm><programlisting><link linkend="void">void</link> cairo_glyph_extents (<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="cairo-text-extents-t">cairo_text_extents_t</link> *extents);</programlisting></refsect2></refsect1></refentry>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -