📄 main.sgml
字号:
<!-- ##### SECTION Title ##### -->Rendering<!-- ##### SECTION Short_Description ##### -->Functions to run the rendering pipeline<!-- ##### SECTION Long_Description ##### --><para>The Pango rendering pipeline takes a string ofUnicode characters and converts it into glyphs.The functions described in this section accomplishvarious steps of this process.</para><!-- ##### SECTION See_Also ##### --><para></para><!-- ##### SECTION Stability_Level ##### --><!-- ##### STRUCT PangoContext ##### --><para>The #PangoContext structure stores global informationused to control the itemization process. </para><!-- ##### STRUCT PangoItem ##### --><para>The #PangoItem structure stores information abouta segment of text. It contains the following fields:</para>@offset: the offset of the segment from the beginning of the string in bytes.@length: the length of the segment in bytes.@num_chars: the length of the segment in characters.@analysis: the properties of the segment.<!-- ##### STRUCT PangoAnalysis ##### --><para>The #PangoAnalysis structure stores information aboutthe properties of a segment of text. It has the followingfields:</para>@shape_engine: the engine for doing rendering-system-dependent processing.@lang_engine: the engine for doing rendering-system-independent processing.@font: the font for this segment.@level: the bidirectional level for this segment.@gravity: the glyph orientation for this segment.@flags: boolean flags for this segment (currently only one) (Since: 1.16).@language: the detected language for this segment.@extra_attrs: extra attributes for this segment.<!-- ##### MACRO PANGO_ANALYSIS_FLAG_CENTERED_BASELINE ##### --><para>Whether the segment should be shifted to center around the baseline.Used in vertical writing directions mostly.Since: 1.16</para><!-- ##### ENUM PangoDirection ##### --><para></para>@PANGO_DIRECTION_LTR: @PANGO_DIRECTION_RTL: @PANGO_DIRECTION_TTB_LTR: @PANGO_DIRECTION_TTB_RTL: @PANGO_DIRECTION_WEAK_LTR: @PANGO_DIRECTION_WEAK_RTL: @PANGO_DIRECTION_NEUTRAL: <!-- ##### MACRO PANGO_TYPE_DIRECTION ##### --><para>The #GObject type for #PangoDirection.</para><!-- ##### FUNCTION pango_itemize ##### --><para></para>@context: @text: @start_index: @length: @attrs: @cached_iter: @Returns: <!-- ##### FUNCTION pango_itemize_with_base_dir ##### --><para></para>@context: @base_dir: @text: @start_index: @length: @attrs: @cached_iter: @Returns: <!-- ##### FUNCTION pango_item_free ##### --><para></para>@item: <!-- ##### FUNCTION pango_item_copy ##### --><para></para>@item: @Returns: <!-- ##### FUNCTION pango_item_new ##### --><para></para>@Returns: <!-- ##### FUNCTION pango_item_split ##### --><para></para>@orig: @split_index: @split_offset: @Returns: <!-- ##### FUNCTION pango_reorder_items ##### --><para></para>@logical_items: @Returns: <!-- ##### FUNCTION pango_context_new ##### --><para></para>@Returns: <!-- ##### FUNCTION pango_context_set_font_map ##### --><para></para>@context: @font_map: <!-- ##### FUNCTION pango_context_get_font_map ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_get_font_description ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_font_description ##### --><para></para>@context: @desc: <!-- ##### FUNCTION pango_context_get_language ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_language ##### --><para></para>@context: @language: <!-- ##### FUNCTION pango_context_get_base_dir ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_base_dir ##### --><para></para>@context: @direction: <!-- ##### FUNCTION pango_context_get_base_gravity ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_base_gravity ##### --><para></para>@context: @gravity: <!-- ##### FUNCTION pango_context_get_gravity ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_get_gravity_hint ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_gravity_hint ##### --><para></para>@context: @hint: <!-- ##### FUNCTION pango_context_get_matrix ##### --><para></para>@context: @Returns: <!-- ##### FUNCTION pango_context_set_matrix ##### --><para></para>@context: @matrix: <!-- ##### FUNCTION pango_context_load_font ##### --><para></para>@context: @desc: @Returns: <!-- ##### FUNCTION pango_context_load_fontset ##### --><para></para>@context: @desc: @language: @Returns: <!-- ##### FUNCTION pango_context_get_metrics ##### --><para></para>@context: @desc: @language: @Returns: <!-- ##### FUNCTION pango_context_list_families ##### --><para></para>@context: @families: @n_families: <!-- ##### FUNCTION pango_get_mirror_char ##### --><para></para>@ch: @mirrored_ch: @Returns: <!-- ##### FUNCTION pango_unichar_direction ##### --><para></para>@ch: @Returns: <!-- ##### FUNCTION pango_find_base_dir ##### --><para></para>@text: @length: @Returns: <!-- ##### FUNCTION pango_gravity_to_rotation ##### --><para></para>@gravity: @Returns: <!-- ##### FUNCTION pango_break ##### --><para></para>@text: @length: @analysis: @attrs: @attrs_len: <!-- ##### FUNCTION pango_get_log_attrs ##### --><para></para>@text: @length: @level: @language: @log_attrs: @attrs_len: <!-- ##### FUNCTION pango_find_paragraph_boundary ##### --><para></para>@text: @length: @paragraph_delimiter_index: @next_paragraph_start: <!-- ##### FUNCTION pango_default_break ##### --><para></para>@text: @length: @analysis: @attrs: @attrs_len: <!-- ##### STRUCT PangoLogAttr ##### --><para>The #PangoLogAttr structure stores informationabout the attributes of a single character.</para>@is_line_break: if set, can break line in front of character@is_mandatory_break: if set, must break line in front of character@is_char_break: if set, can break here when doing character wrapping@is_white: is whitespace character@is_cursor_position: if set, cursor can appear in front of character. i.e. this is a grapheme boundary, or the first character in the text.@is_word_start: is first character in a word@is_word_end: is first non-word char after a word Note that in degenerate cases, you could have both @is_word_start and @is_word_end set for some character.@is_sentence_boundary: is a sentence boundary. There are two ways to divide sentences. The first assigns all inter-sentence whitespace/control/format chars to some sentence, so all chars are in some sentence; @is_sentence_boundary denotes the boundaries there. The second way doesn't assign between-sentence spaces, etc. to any sentence, so @is_sentence_start/@is_sentence_end mark the boundaries of those sentences.@is_sentence_start: is first character in a sentence@is_sentence_end: is first char after a sentence. Note that in degenerate cases, you could have both @is_sentence_start and @is_sentence_end set for some character. (e.g. no space after a period, so the next sentence starts right away)@backspace_deletes_character: if set, backspace deletes one character rather than the entire grapheme cluster. This field is only meaningful on grapheme boundaries (where @is_cursor_position is set). In some languages, the full grapheme (e.g. letter + diacritics) is considered a unit, while in others, each decomposed character in the grapheme is a unit. In the default implementation of pango_break(), this bit is set on all grapheme boundaries except those following Latin, Cyrillic or Greek base characters.<!-- ##### FUNCTION pango_shape ##### --><para></para>@text: @length: @analysis: @glyphs:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -