diff options
Diffstat (limited to 'docs')
-rwxr-xr-x | docs/check.docs | 57 | ||||
-rw-r--r-- | docs/meson.build | 224 | ||||
-rw-r--r-- | docs/pango-docs.sgml | 167 | ||||
-rw-r--r-- | docs/pango-name-black.png | bin | 0 -> 12854 bytes | |||
-rw-r--r-- | docs/pango-name-solid.png | bin | 0 -> 2021 bytes | |||
-rw-r--r-- | docs/pango-name-white.png | bin | 0 -> 13194 bytes | |||
-rw-r--r-- | docs/pango-name.png | bin | 0 -> 13194 bytes | |||
-rw-r--r-- | docs/pango-overrides.txt | 0 | ||||
-rw-r--r-- | docs/pango-sections.txt | 1276 | ||||
-rw-r--r-- | docs/pango.toml.in | 73 | ||||
-rw-r--r-- | docs/pango_bidi.md | 58 | ||||
-rw-r--r-- | docs/pango_cairo.md | 129 | ||||
-rw-r--r-- | docs/pango_fonts.md | 65 | ||||
-rw-r--r-- | docs/pango_markup.md | 184 | ||||
-rw-r--r-- | docs/pango_markup.sgml | 301 | ||||
-rw-r--r-- | docs/pango_rendering.md | 35 | ||||
-rw-r--r-- | docs/pango_xft.md | 26 | ||||
-rw-r--r-- | docs/pangocairo.toml.in | 40 | ||||
-rw-r--r-- | docs/pangofc.toml.in | 36 | ||||
-rw-r--r-- | docs/pangoft2.toml.in | 36 | ||||
-rw-r--r-- | docs/pangoot.toml.in | 31 | ||||
-rw-r--r-- | docs/pangoxft.toml.in | 39 | ||||
-rw-r--r-- | docs/rects3.png | bin | 0 -> 17137 bytes | |||
-rw-r--r-- | docs/version.xml.in | 1 | ||||
-rw-r--r-- | docs/xml/gtkdocentities.ent.in | 8 | ||||
-rw-r--r-- | docs/xml/meson.build | 10 |
26 files changed, 897 insertions, 1899 deletions
diff --git a/docs/check.docs b/docs/check.docs deleted file mode 100755 index 8eb5fe1c..00000000 --- a/docs/check.docs +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/sh - -LC_ALL=C -export LC_ALL - -if test -z "$DOC_MODULE"; then - # extract from Makefile - eval `grep '^DOC_MODULE' Makefile | sed 's/ //g'` - if test -z "$DOC_MODULE"; then - echo Failed extracting DOC_MODULE from Makefile 1>&2 - echo Try setting DOC_MODULE env var manually 1>&2 - exit 1 - fi -fi - -if test -n "$REPORT_FILES"; then - $MAKE $REPORT_FILES || exit 1 -fi - -test -z "$srcdir" && srcdir=. -stat=0 - -if test -f "$DOC_MODULE-undeclared.txt"; then - undeclared=`cat "$DOC_MODULE-undeclared.txt"` - if test -n "$undeclared"; then - echo Undeclared documentation symbols: 1>&2 - cat "$DOC_MODULE-undeclared.txt" 1>&2 - stat=1 - fi -fi >&2 -if test -f "$DOC_MODULE-unused.txt"; then - unused=`cat "$DOC_MODULE-unused.txt"` - if test -n "$unused"; then - echo Unused documentated symbols: 1>&2 - cat "$DOC_MODULE-unused.txt" 1>&2 - stat=1 - fi -fi >&2 -if test -f "$DOC_MODULE-undocumented.txt"; then - if grep '^0 symbols incomplete' "$DOC_MODULE-undocumented.txt" >/dev/null && - grep '^0 not documented' "$DOC_MODULE-undocumented.txt" >/dev/null; then - : - else - echo Incomplete or undocumented symbols: 1>&2 - cat "$DOC_MODULE-undocumented.txt" 1>&2 - stat=1 - fi -fi >&2 - -# Make failure non-critical for now since this is broken -if test $stat == 1; then - echo "**********************************************" - echo "checks.docs failed, but we ignore this for now" - echo "**********************************************" -fi -# exit $stat - diff --git a/docs/meson.build b/docs/meson.build index e847a34f..14a7a5cd 100644 --- a/docs/meson.build +++ b/docs/meson.build @@ -1,97 +1,163 @@ -subdir('xml') +gidocgen = find_program('gi-docgen', required: get_option('gtk_doc')) -version_xml_conf = configuration_data() -version_xml_conf.set('PANGO_VERSION', meson.project_version()) -configure_file(input: 'version.xml.in', - output: 'version.xml', - configuration: version_xml_conf) - -private_headers = [ - 'pangocairo-private.h', - 'pangocairo-fc-private.h', - 'pangocairo-fc.h', - 'pangocairo-win32.h', - 'pangocairo-atsui.h', - 'pango-coverage-private.h', - 'pango-color-table.h', - 'pango-emoji-private.h', - 'pango-font-private.h', - 'pango-fontmap-private.h', - 'pango-fontset-private.h', - 'pango-impl-utils.h', - 'pango-glyph-item-private.h', - 'pango-layout-private.h', - 'pango-script-table.h', - 'pango-script-private.h', - 'pango-utils-private.h', - 'pangofc-private.h', - 'pangofc-fontmap-private.h', - 'pangoft2-private.h', - 'pangowin32-private.h', - 'pangoatsui-private.h', - 'pangoxft-private.h', - 'pango-ot-private.h', - 'pango-script-lang-table.h', - 'pango-language-sample-table.h', - 'pangocoretext-private.h', -] - -content_files = [ - 'pango_markup.sgml', - 'version.xml', -] - -html_images = [ +pango_content_files = [ + 'pango_rendering.md', + 'pango_markup.md', + 'pango_fonts.md', + 'pango_bidi.md', + 'pango-name.png', 'layout.png', 'pipeline.png', - 'rotated-text.png', 'rects1.png', 'rects2.png', + 'rects3.png', ] -docdeps = [ libpango_dep ] +doc_conf = configuration_data() +doc_conf.set('PANGO_VERSION', meson.project_version()) + +pango_toml = configure_file(input: 'pango.toml.in', + output: 'pango.toml', + configuration: doc_conf) + +custom_target('pango-doc', + input: pango_gir[0], + output: 'Pango', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pango_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pango_toml, pango_content_files], + build_by_default: true, +) if build_pangoft2 - docdeps += libpangoft2_dep + pangoft2_toml = configure_file(input: 'pangoft2.toml.in', + output: 'pangoft2.toml', + configuration: doc_conf) + + custom_target('pangoft-doc', + input: pangoft2_gir[0], + output: 'PangoFT2', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pangoft2_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pangoft2_toml, 'pango-name.png' ], + build_by_default: true, + ) endif if xft_dep.found() and fontconfig_dep.found() - docdeps += libpangoxft_dep + pangoxft_toml = configure_file(input: 'pangoxft.toml.in', + output: 'pangoxft.toml', + configuration: doc_conf) + + custom_target('pangoxft-doc', + input: pangoxft_gir[0], + output: 'PangoXft', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pangoxft_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pangoxft_toml, 'pango-name.png' ], + build_by_default: true, + ) endif if cairo_dep.found() - docdeps += libpangocairo_dep + pangocairo_content_files = [ + 'pango_cairo.md', + 'pango-name.png', + 'rotated-text.png', + ] + + pangocairo_toml = configure_file(input: 'pangocairo.toml.in', + output: 'pangocairo.toml', + configuration: doc_conf) + + custom_target('pangocairo-doc', + input: pangocairo_gir[0], + output: 'PangoCairo', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pangocairo_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pangocairo_toml, pangocairo_content_files ], + build_by_default: true, + ) endif -glib_prefix = dependency('glib-2.0').get_pkgconfig_variable('prefix') -glib_docpath = join_paths(glib_prefix, 'share', 'gtk-doc', 'html') -cairo_prefix = dependency('cairo').get_pkgconfig_variable('prefix') -cairo_docpath = join_paths(cairo_prefix, 'share', 'gtk-doc', 'html') -docpath = join_paths(pango_datadir, 'gtk-doc', 'html') +pangoot_toml = configure_file(input: 'pangoot.toml.in', + output: 'pangoot.toml', + configuration: doc_conf) -gnome.gtkdoc('pango', - main_xml: 'pango-docs.sgml', - src_dir: [ - pango_inc, - ], - dependencies: docdeps, - gobject_typesfile: configure_file(input: 'pango.types.in', - output: 'pango.types', - configuration: pango_conf), - scan_args: [ - '--deprecated-guards=PANGO_DISABLE_DEPRECATED', - '--ignore-decorators=_PANGO_EXTERN', - '--ignore-headers=' + ' '.join(private_headers), - ], - mkdb_args: [ - '--sgml-mode', - '--output-format=xml', - ], - fixxref_args: [ - '--html-dir=@0@'.format(docpath), - '--extra-dir=@0@'.format(join_paths(glib_docpath, 'glib')), - '--extra-dir=@0@'.format(join_paths(glib_docpath, 'gobject')), - '--extra-dir=@0@'.format(join_paths(cairo_docpath, 'cairo')), - ], - html_assets: html_images, - install: true) +custom_target('pangoot-doc', + input: pangoot_gir[0], + output: 'PangoOT', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pangoot_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pangoot_toml, 'pango-name.png' ], + build_by_default: true, +) + +if fontconfig_dep.found() + pangofc_toml = configure_file(input: 'pangofc.toml.in', + output: 'pangofc.toml', + configuration: doc_conf) + + custom_target('pangofc-doc', + input: pangofc_gir[0], + output: 'PangoFc', + command: [ + gidocgen, + 'generate', + '--quiet', + '--add-include-path=@0@'.format(meson.current_build_dir() / '../pango'), + '--config', pangofc_toml, + '--output-dir=@OUTPUT@', + '--no-namespace-dir', + '--content-dir=@0@'.format(meson.current_source_dir()), + '@INPUT@', + ], + depend_files: [ pangofc_toml, 'pango-name.png' ], + build_by_default: true, + ) +endif diff --git a/docs/pango-docs.sgml b/docs/pango-docs.sgml deleted file mode 100644 index 2ac4f6df..00000000 --- a/docs/pango-docs.sgml +++ /dev/null @@ -1,167 +0,0 @@ -<?xml version="1.0"?> -<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" - "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" -[ -<!ENTITY % local.common.attrib "xmlns:xi CDATA #FIXED 'http://www.w3.org/2003/XInclude'"> -<!ENTITY version SYSTEM "version.xml"> -]> -<book id="index" xmlns:xi="http://www.w3.org/2003/XInclude"> - <bookinfo> - <title>Pango Reference Manual</title> - <abstract>Internationalized text layout and rendering</abstract> - <releaseinfo>for Pango &version;. - Online at - <ulink role="online-location" url="https://developer.gnome.org/pango/">https://developer.gnome.org/pango/</ulink> - </releaseinfo> - </bookinfo> - - <chapter id="pango"> - <title>Basic Pango Interfaces</title> - <xi:include href="xml/main.xml"/> - <xi:include href="xml/fonts.xml"/> - <xi:include href="xml/glyphs.xml"/> - <xi:include href="xml/text-attributes.xml"/> - <xi:include href="xml/markup.xml"/> - <xi:include href="xml/layout.xml"/> - <xi:include href="xml/scripts.xml"/> - <xi:include href="xml/bidi.xml"/> - <xi:include href="xml/vertical.xml"/> - </chapter> - - <chapter id="rendering"> - <title>Rendering with Pango</title> - <xi:include href="xml/pangocairo.xml"/> - <xi:include href="xml/win32-fonts.xml"/> - <xi:include href="xml/coretext-fonts.xml"/> - <xi:include href="xml/freetype-fonts.xml"/> - <xi:include href="xml/xft-fonts.xml"/> - </chapter> - - <chapter id="lowlevel"> - <title>Low Level Functionality</title> - <xi:include href="xml/context.xml"/> - <xi:include href="xml/tab-stops.xml"/> - <xi:include href="xml/coverage-maps.xml"/> - <xi:include href="xml/pango-renderer.xml"/> - <xi:include href="xml/pangofc-fontmap.xml"/> - <xi:include href="xml/pangofc-font.xml"/> - <xi:include href="xml/pangofc-decoder.xml"/> - <xi:include href="xml/utils.xml"/> - <xi:include href="xml/pango-version.xml"/> - </chapter> - - <chapter id="deprecated"> - <title>Deprecated APIs</title> - <xi:include href="xml/opentype.xml"/> - <xi:include href="xml/engines.xml"/> - <xi:include href="xml/pango-engine-lang.xml"/> - <xi:include href="xml/pango-engine-shape.xml"/> - <xi:include href="xml/modules.xml"/> - </chapter> - - <chapter id="pango-hierarchy"> - <title>Object Hierarchy</title> - <xi:include href="xml/tree_index.sgml"/> - </chapter> - - <xi:include href="xml/annotation-glossary.xml"><xi:fallback /></xi:include> - - - <index id="api-index-full"> - <title>Index of all symbols</title> - <xi:include href="xml/api-index-full.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-deprecated"> - <title>Index of deprecated symbols</title> - <xi:include href="xml/api-index-deprecated.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-2"> - <title>Index of new symbols in 1.2</title> - <xi:include href="xml/api-index-1.2.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-4"> - <title>Index of new symbols in 1.4</title> - <xi:include href="xml/api-index-1.4.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-6"> - <title>Index of new symbols in 1.6</title> - <xi:include href="xml/api-index-1.6.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-8"> - <title>Index of new symbols in 1.8</title> - <xi:include href="xml/api-index-1.8.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-10"> - <title>Index of new symbols in 1.10</title> - <xi:include href="xml/api-index-1.10.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-12"> - <title>Index of new symbols in 1.12</title> - <xi:include href="xml/api-index-1.12.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-14"> - <title>Index of new symbols in 1.14</title> - <xi:include href="xml/api-index-1.14.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-16"> - <title>Index of new symbols in 1.16</title> - <xi:include href="xml/api-index-1.16.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-18"> - <title>Index of new symbols in 1.18</title> - <xi:include href="xml/api-index-1.18.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-20"> - <title>Index of new symbols in 1.20</title> - <xi:include href="xml/api-index-1.20.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-22"> - <title>Index of new symbols in 1.22</title> - <xi:include href="xml/api-index-1.22.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-24"> - <title>Index of new symbols in 1.24</title> - <xi:include href="xml/api-index-1.24.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-26"> - <title>Index of new symbols in 1.26</title> - <xi:include href="xml/api-index-1.26.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-30"> - <title>Index of new symbols in 1.30</title> - <xi:include href="xml/api-index-1.30.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-31-0"> - <title>Index of new symbols in 1.31</title> - <xi:include href="xml/api-index-1.31.0.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-32"> - <title>Index of new symbols in 1.32</title> - <xi:include href="xml/api-index-1.32.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-32-4"> - <title>Index of new symbols in 1.32.4</title> - <xi:include href="xml/api-index-1.32.4.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-34"> - <title>Index of new symbols in 1.34</title> - <xi:include href="xml/api-index-1.34.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-38"> - <title>Index of new symbols in 1.38</title> - <xi:include href="xml/api-index-1.38.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-42"> - <title>Index of new symbols in 1.42</title> - <xi:include href="xml/api-index-1.42.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-44"> - <title>Index of new symbols in 1.44</title> - <xi:include href="xml/api-index-1.44.xml"><xi:fallback /></xi:include> - </index> - <index id="api-index-1-46"> - <title>Index of new symbols in 1.46</title> - <xi:include href="xml/api-index-1.46.xml"><xi:fallback /></xi:include> - </index> - -</book> diff --git a/docs/pango-name-black.png b/docs/pango-name-black.png Binary files differnew file mode 100644 index 00000000..00025b68 --- /dev/null +++ b/docs/pango-name-black.png diff --git a/docs/pango-name-solid.png b/docs/pango-name-solid.png Binary files differnew file mode 100644 index 00000000..630c5142 --- /dev/null +++ b/docs/pango-name-solid.png diff --git a/docs/pango-name-white.png b/docs/pango-name-white.png Binary files differnew file mode 100644 index 00000000..2240573a --- /dev/null +++ b/docs/pango-name-white.png diff --git a/docs/pango-name.png b/docs/pango-name.png Binary files differnew file mode 100644 index 00000000..2240573a --- /dev/null +++ b/docs/pango-name.png diff --git a/docs/pango-overrides.txt b/docs/pango-overrides.txt deleted file mode 100644 index e69de29b..00000000 --- a/docs/pango-overrides.txt +++ /dev/null diff --git a/docs/pango-sections.txt b/docs/pango-sections.txt deleted file mode 100644 index 358f5bbf..00000000 --- a/docs/pango-sections.txt +++ /dev/null @@ -1,1276 +0,0 @@ -<SECTION> -<TITLE>Text Processing</TITLE> -<FILE>main</FILE> -<SUBSECTION> -PangoItem -PangoAnalysis -PANGO_ANALYSIS_FLAG_CENTERED_BASELINE -PANGO_ANALYSIS_FLAG_IS_ELLIPSIS -PANGO_ANALYSIS_FLAG_NEED_HYPHEN - -<SUBSECTION> -pango_itemize -pango_itemize_with_base_dir -pango_item_free -pango_item_copy -pango_item_new -pango_item_split -pango_item_apply_attrs -pango_reorder_items - -<SUBSECTION> -pango_break -pango_get_log_attrs -pango_find_paragraph_boundary -pango_default_break -pango_tailor_break -PangoLogAttr - -<SUBSECTION> -pango_shape -pango_shape_full -PangoShapeFlags -pango_shape_with_flags - -<SUBSECTION Standard> -PANGO_TYPE_DIRECTION -PANGO_TYPE_ITEM - -<SUBSECTION Private> -pango_item_get_type -</SECTION> - -<SECTION> -<TITLE>Contexts</TITLE> -<FILE>context</FILE> -PangoContext -pango_context_new -pango_context_changed -pango_context_get_serial -pango_context_set_font_map -pango_context_get_font_map -pango_context_get_font_description -pango_context_set_font_description -pango_context_get_language -pango_context_set_language -pango_context_get_base_dir -pango_context_set_base_dir -pango_context_get_base_gravity -pango_context_set_base_gravity -pango_context_get_gravity -pango_context_get_gravity_hint -pango_context_set_gravity_hint -pango_context_get_matrix -pango_context_set_matrix -pango_context_get_round_glyph_positions -pango_context_set_round_glyph_positions -pango_context_load_font -pango_context_load_fontset -pango_context_get_metrics -pango_context_list_families - -<SUBSECTION Standard> -PANGO_TYPE_CONTEXT -PangoContextClass -PANGO_CONTEXT -PANGO_CONTEXT_CLASS -PANGO_IS_CONTEXT -PANGO_IS_CONTEXT_CLASS -PANGO_CONTEXT_GET_CLASS -PANGO_TYPE_ITEM - -<SUBSECTION Private> -pango_context_get_type -</SECTION> - -<SECTION> -<TITLE>Glyph Storage</TITLE> -<FILE>glyphs</FILE> -PANGO_SCALE -PANGO_PIXELS -PANGO_PIXELS_FLOOR -PANGO_PIXELS_CEIL -PANGO_UNITS_ROUND -pango_units_to_double -pango_units_from_double -PangoRectangle -PANGO_ASCENT -PANGO_DESCENT -PANGO_LBEARING -PANGO_RBEARING -pango_extents_to_pixels -PangoMatrix -PANGO_MATRIX_INIT -pango_matrix_copy -pango_matrix_free -pango_matrix_translate -pango_matrix_scale -pango_matrix_rotate -pango_matrix_concat -pango_matrix_transform_point -pango_matrix_transform_distance -pango_matrix_transform_rectangle -pango_matrix_transform_pixel_rectangle -pango_matrix_get_font_scale_factor -pango_matrix_get_font_scale_factors -PangoGlyph -PANGO_GLYPH_EMPTY -PANGO_GLYPH_INVALID_INPUT -PANGO_GLYPH_UNKNOWN_FLAG -PANGO_GET_UNKNOWN_GLYPH -PangoGlyphInfo -PangoGlyphGeometry -PangoGlyphUnit -PangoGlyphVisAttr -PangoGlyphString -PangoGlyphItem -PangoGlyphItemIter -pango_glyph_string_new -pango_glyph_string_copy -pango_glyph_string_set_size -pango_glyph_string_free -pango_glyph_string_extents -pango_glyph_string_extents_range -pango_glyph_string_get_width -pango_glyph_string_index_to_x -pango_glyph_string_x_to_index -pango_glyph_string_get_logical_widths -pango_glyph_item_copy -pango_glyph_item_free -pango_glyph_item_split -pango_glyph_item_apply_attrs -pango_glyph_item_letter_space -pango_glyph_item_get_logical_widths -pango_glyph_item_iter_copy -pango_glyph_item_iter_free -pango_glyph_item_iter_init_start -pango_glyph_item_iter_init_end -pango_glyph_item_iter_next_cluster -pango_glyph_item_iter_prev_cluster - -PANGO_TYPE_GLYPH_STRING -<SUBSECTION Private> -PANGO_TYPE_GLYPH_ITEM -PANGO_TYPE_GLYPH_ITEM_ITER -PANGO_TYPE_MATRIX -pango_glyph_string_get_type -pango_glyph_item_get_type -pango_glyph_item_iter_get_type -pango_matrix_get_type -</SECTION> - -<SECTION> -<TITLE>Coverage Maps</TITLE> -<FILE>coverage-maps</FILE> -PangoCoverageLevel -PANGO_TYPE_COVERAGE_LEVEL -PangoCoverage -<SUBSECTION> -pango_coverage_new -pango_coverage_ref -pango_coverage_unref -pango_coverage_copy -pango_coverage_get -pango_coverage_max -pango_coverage_set -pango_coverage_to_bytes -pango_coverage_from_bytes - -<SUBSECTION Private> -pango_coverage_level_get_type -pango_coverage_get_type -PANGO_COVERAGE -PANGO_COVERAGE_CLASS -PANGO_COVERAGE_GET_CLASS -PANGO_IS_COVERAGE -PANGO_IS_COVERAGE_CLASS -PANGO_TYPE_COVERAGE -PangoCoverageClass -PangoCoveragePrivate -</SECTION> - -<SECTION> -<TITLE>Fonts</TITLE> -<FILE>fonts</FILE> -PangoFontDescription -PangoStyle -PangoWeight -PangoVariant -PangoStretch -PangoFontMask -pango_font_description_new -pango_font_description_copy -pango_font_description_copy_static -pango_font_description_hash -pango_font_description_equal -pango_font_description_free -pango_font_descriptions_free -pango_font_description_set_family -pango_font_description_set_family_static -pango_font_description_get_family -pango_font_description_set_style -pango_font_description_get_style -pango_font_description_set_variant -pango_font_description_get_variant -pango_font_description_set_weight -pango_font_description_get_weight -pango_font_description_set_stretch -pango_font_description_get_stretch -pango_font_description_set_size -pango_font_description_get_size -pango_font_description_set_absolute_size -pango_font_description_get_size_is_absolute -pango_font_description_set_gravity -pango_font_description_get_gravity -pango_font_description_set_variations -pango_font_description_set_variations_static -pango_font_description_get_variations -pango_font_description_get_set_fields -pango_font_description_unset_fields -pango_font_description_merge -pango_font_description_merge_static -pango_font_description_better_match -pango_font_description_from_string -pango_font_description_to_string -pango_font_description_to_filename -<SUBSECTION> -PangoFontMetrics -pango_font_metrics_ref -pango_font_metrics_unref -pango_font_metrics_get_ascent -pango_font_metrics_get_descent -pango_font_metrics_get_height -pango_font_metrics_get_approximate_char_width -pango_font_metrics_get_approximate_digit_width -pango_font_metrics_get_underline_thickness -pango_font_metrics_get_underline_position -pango_font_metrics_get_strikethrough_thickness -pango_font_metrics_get_strikethrough_position -<SUBSECTION> -PangoFont -pango_font_find_shaper -pango_font_describe -pango_font_describe_with_absolute_size -pango_font_get_face -pango_font_get_coverage -pango_font_has_char -pango_font_get_glyph_extents -pango_font_get_metrics -pango_font_get_font_map -pango_font_get_features -pango_font_get_hb_font -<SUBSECTION> -PangoFontFamily -pango_font_family_get_name -pango_font_family_is_monospace -pango_font_family_is_variable -pango_font_family_list_faces -pango_font_family_get_face -<SUBSECTION> -PangoFontFace -pango_font_face_get_face_name -pango_font_face_list_sizes -pango_font_face_describe -pango_font_face_is_synthesized -pango_font_face_get_family -<SUBSECTION> -PangoFontMap -PangoFontMapClass -pango_font_map_create_context -pango_font_map_load_font -pango_font_map_load_fontset -pango_font_map_list_families -pango_font_map_get_family -pango_font_map_get_serial -pango_font_map_changed -<SUBSECTION> -PangoFontset -PangoFontsetClass -pango_fontset_get_font -pango_fontset_get_metrics -PangoFontsetForeachFunc -pango_fontset_foreach - -<SUBSECTION Standard> -PANGO_TYPE_FONTSET -PANGO_TYPE_FONT_MAP -PANGO_FONT_MAP -PANGO_IS_FONT_MAP -PANGO_FONT_MAP_CLASS -PANGO_IS_FONT_MAP_CLASS -PANGO_FONT_MAP_GET_CLASS -PANGO_TYPE_FONT_FAMILY -PANGO_FONT_FAMILY -PANGO_IS_FONT_FAMILY -PANGO_TYPE_FONT_FACE -PANGO_FONT_FACE -PANGO_IS_FONT_FACE -PANGO_TYPE_FONT_METRICS -PANGO_TYPE_FONT -PANGO_FONT -PANGO_IS_FONT -PANGO_TYPE_FONT_DESCRIPTION -PANGO_TYPE_STYLE -PANGO_TYPE_WEIGHT -PANGO_TYPE_VARIANT -PANGO_TYPE_STRETCH -PANGO_TYPE_FONT_MASK -PANGO_FONT_FACE_CLASS -PANGO_IS_FONT_CLASS -PANGO_FONT_FACE_GET_CLASS -PangoFontFamilyClass -PangoFontFaceClass -PANGO_FONT_GET_CLASS -PANGO_FONT_CLASS -PANGO_IS_FONT_FAMILY_CLASS -PangoFontClass -PANGO_FONT_FAMILY_GET_CLASS -PANGO_FONT_FAMILY_CLASS -PANGO_IS_FONT_FACE_CLASS -PANGO_FONTSET -PANGO_IS_FONTSET -PANGO_FONTSET_CLASS -PANGO_IS_FONTSET_CLASS -PANGO_FONTSET_GET_CLASS -PANGO_FONTSET_SIMPLE -PANGO_IS_FONTSET_SIMPLE -PangoFontsetSimpleClass - -<SUBSECTION Private> -pango_font_metrics_new -pango_font_get_type -pango_stretch_get_type -pango_style_get_type -pango_variant_get_type -pango_weight_get_type -pango_font_mask_get_type -pango_font_description_get_type -pango_font_map_get_type -pango_font_face_get_type -pango_font_family_get_type -pango_font_metrics_get_type -pango_fontset_get_type -pango_fontset_simple_get_type -PANGO_UNKNOWN_GLYPH_WIDTH -PANGO_UNKNOWN_GLYPH_HEIGHT -</SECTION> - -<SECTION> -<TITLE>Text Attributes</TITLE> -<FILE>text-attributes</FILE> -PangoAttrType -PangoAttrClass -PangoAttribute -PANGO_ATTR_INDEX_FROM_TEXT_BEGINNING -PANGO_ATTR_INDEX_TO_TEXT_END -PangoAttrString -PangoAttrLanguage -PangoAttrColor -PangoAttrInt -PangoAttrFloat -PangoAttrFontDesc -PangoAttrShape -PangoAttrSize -PangoAttrFontFeatures -pango_attr_type_register -pango_attr_type_get_name -pango_attribute_init -pango_attribute_copy -pango_attribute_equal -pango_attribute_destroy -<SUBSECTION> -pango_attr_language_new -pango_attr_family_new -pango_attr_style_new -pango_attr_variant_new -pango_attr_stretch_new -pango_attr_weight_new -pango_attr_size_new -pango_attr_size_new_absolute -pango_attr_font_desc_new -pango_attr_foreground_new -pango_attr_background_new -pango_attr_strikethrough_new -pango_attr_strikethrough_color_new -pango_attr_underline_new -pango_attr_underline_color_new -PangoUnderline -pango_attr_overline_new -pango_attr_overline_color_new -PangoOverline -pango_attr_shape_new -pango_attr_shape_new_with_data -PangoAttrDataCopyFunc -pango_attr_scale_new -PANGO_SCALE_XX_SMALL -PANGO_SCALE_X_SMALL -PANGO_SCALE_SMALL -PANGO_SCALE_MEDIUM -PANGO_SCALE_LARGE -PANGO_SCALE_X_LARGE -PANGO_SCALE_XX_LARGE -pango_attr_rise_new -pango_attr_letter_spacing_new -pango_attr_fallback_new -pango_attr_gravity_new -pango_attr_gravity_hint_new -pango_attr_font_features_new -pango_attr_foreground_alpha_new -pango_attr_background_alpha_new -pango_attr_allow_breaks_new -pango_attr_insert_hyphens_new -PangoShowFlags -pango_attr_show_new -PangoColor -pango_color_parse -pango_color_parse_with_alpha -pango_color_copy -pango_color_free -pango_color_to_string -<SUBSECTION> -PangoAttrList -pango_attr_list_new -pango_attr_list_ref -pango_attr_list_unref -pango_attr_list_copy -pango_attr_list_insert -pango_attr_list_insert_before -pango_attr_list_change -pango_attr_list_splice -pango_attr_list_filter -pango_attr_list_update -PangoAttrFilterFunc -pango_attr_list_get_attributes -pango_attr_list_equal -pango_attr_list_get_iterator -PangoAttrIterator -pango_attr_iterator_copy -pango_attr_iterator_next -pango_attr_iterator_range -pango_attr_iterator_get -pango_attr_iterator_get_font -pango_attr_iterator_get_attrs -pango_attr_iterator_destroy - -<SUBSECTION Private> -PANGO_TYPE_ATTR_TYPE -PANGO_TYPE_UNDERLINE -PANGO_TYPE_COLOR -PANGO_TYPE_ATTR_LIST -pango_attr_type_get_type -pango_attr_list_get_type -pango_underline_get_type -pango_color_get_type -pango_attribute_get_type -</SECTION> - -<SECTION> -<TITLE>Markup</TITLE> -<FILE>markup</FILE> -pango_parse_markup -pango_markup_parser_new -pango_markup_parser_finish -</SECTION> - -<SECTION> -<TITLE>Tab Stops</TITLE> -<FILE>tab-stops</FILE> -PangoTabArray -PangoTabAlign -pango_tab_array_new -pango_tab_array_new_with_positions -pango_tab_array_copy -pango_tab_array_free -pango_tab_array_get_size -pango_tab_array_resize -pango_tab_array_set_tab -pango_tab_array_get_tab -pango_tab_array_get_tabs -pango_tab_array_get_positions_in_pixels - -<SUBSECTION Private> -PANGO_TYPE_TAB_ARRAY -PANGO_TYPE_TAB_ALIGN -pango_tab_align_get_type -pango_tab_array_get_type -</SECTION> - -<SECTION> -<TITLE>Layout Objects</TITLE> -<FILE>layout</FILE> -PangoLayout -PangoLayoutIter -pango_layout_new -pango_layout_copy - -pango_layout_get_context -pango_layout_context_changed -pango_layout_get_serial - -pango_layout_set_text -pango_layout_get_text -pango_layout_get_character_count -pango_layout_set_markup -pango_layout_set_markup_with_accel -pango_layout_set_attributes -pango_layout_get_attributes -pango_layout_set_font_description -pango_layout_get_font_description -pango_layout_set_width -pango_layout_get_width -pango_layout_set_height -pango_layout_get_height -pango_layout_set_wrap -pango_layout_get_wrap -pango_layout_is_wrapped -PangoWrapMode -pango_layout_set_ellipsize -pango_layout_get_ellipsize -pango_layout_is_ellipsized -PangoEllipsizeMode -pango_layout_set_indent -pango_layout_get_indent -pango_layout_get_spacing -pango_layout_set_spacing -pango_layout_set_line_spacing -pango_layout_get_line_spacing -pango_layout_set_justify -pango_layout_get_justify -pango_layout_set_auto_dir -pango_layout_get_auto_dir -pango_layout_get_direction -pango_layout_set_alignment -pango_layout_get_alignment -pango_layout_set_tabs -pango_layout_get_tabs -pango_layout_set_single_paragraph_mode -pango_layout_get_single_paragraph_mode -PangoAlignment - -pango_layout_get_unknown_glyphs_count -pango_layout_get_log_attrs -pango_layout_get_log_attrs_readonly - -pango_layout_index_to_pos -pango_layout_index_to_line_x -pango_layout_xy_to_index -pango_layout_get_cursor_pos -pango_layout_move_cursor_visually - -pango_layout_get_extents -pango_layout_get_pixel_extents -pango_layout_get_size -pango_layout_get_pixel_size -pango_layout_get_baseline -pango_layout_get_line_count -pango_layout_get_line -pango_layout_get_line_readonly -pango_layout_get_lines -pango_layout_get_lines_readonly - -pango_layout_get_iter -pango_layout_iter_copy -pango_layout_iter_free -pango_layout_iter_next_run -pango_layout_iter_next_char -pango_layout_iter_next_cluster -pango_layout_iter_next_line -pango_layout_iter_at_last_line -pango_layout_iter_get_index -pango_layout_iter_get_baseline -pango_layout_iter_get_run -pango_layout_iter_get_run_readonly -pango_layout_iter_get_line -pango_layout_iter_get_line_readonly -pango_layout_iter_get_layout -pango_layout_iter_get_char_extents -pango_layout_iter_get_cluster_extents -pango_layout_iter_get_run_extents -pango_layout_iter_get_line_yrange -pango_layout_iter_get_line_extents -pango_layout_iter_get_layout_extents - -<SUBSECTION> -PangoLayoutLine -PangoLayoutRun - -pango_layout_line_ref -pango_layout_line_unref -pango_layout_line_get_extents -pango_layout_line_get_pixel_extents -pango_layout_line_index_to_x -pango_layout_line_x_to_index -pango_layout_line_get_x_ranges -pango_layout_line_get_height - -<SUBSECTION Standard> -PANGO_TYPE_WRAP_MODE -PANGO_TYPE_ELLIPSIZE_MODE -PANGO_TYPE_ALIGNMENT -PANGO_TYPE_LAYOUT -PangoLayoutClass -PANGO_LAYOUT -PANGO_IS_LAYOUT -PANGO_LAYOUT_CLASS -PANGO_IS_LAYOUT_CLASS -PANGO_LAYOUT_GET_CLASS -PANGO_TYPE_LAYOUT_ITER -PANGO_TYPE_LAYOUT_LINE - -<SUBSECTION Private> -pango_layout_get_type -pango_layout_iter_get_type -pango_layout_line_get_type -pango_alignment_get_type -pango_wrap_mode_get_type -pango_ellipsize_mode_get_type -</SECTION> - -<SECTION> -<TITLE>Scripts and Languages</TITLE> -<FILE>scripts</FILE> -PangoScript -PangoScriptIter -pango_script_for_unichar -pango_script_get_sample_language -pango_script_iter_new -pango_script_iter_get_range -pango_script_iter_next -pango_script_iter_free -PangoLanguage -pango_language_from_string -pango_language_to_string -pango_language_matches -pango_language_includes_script -pango_language_get_scripts -pango_language_get_default -pango_language_get_preferred -pango_language_get_sample_string - -<SUBSECTION Private> -PANGO_TYPE_LANGUAGE -PANGO_TYPE_SCRIPT -pango_script_get_type -pango_language_get_type -</SECTION> - -<SECTION> -<TITLE>Engines</TITLE> -<FILE>engines</FILE> -PangoEngineInfo -PangoEngineScriptInfo -PangoEngine -PangoEngineClass -script_engine_list -script_engine_init -script_engine_exit -script_engine_create -<SUBSECTION Standard> -PANGO_ENGINE -PANGO_IS_ENGINE -PANGO_TYPE_ENGINE -PANGO_ENGINE_CLASS -PANGO_IS_ENGINE_CLASS -PANGO_ENGINE_GET_CLASS -<SUBSECTION Private> -pango_engine_get_type -PANGO_MODULE_ENTRY -PANGO_ENGINE_DEFINE_TYPE -</SECTION> - -<SECTION> -<TITLE>PangoEngineLang</TITLE> -<FILE>pango-engine-lang</FILE> -PangoEngineLang -PangoEngineLangClass -PANGO_ENGINE_TYPE_LANG -PANGO_ENGINE_LANG_DEFINE_TYPE -<SUBSECTION Standard> -PANGO_ENGINE_LANG -PANGO_IS_ENGINE_LANG -PANGO_TYPE_ENGINE_LANG -PANGO_ENGINE_LANG_CLASS -PANGO_IS_ENGINE_LANG_CLASS -PANGO_ENGINE_LANG_GET_CLASS -<SUBSECTION Private> -pango_engine_lang_get_type -</SECTION> - -<SECTION> -<TITLE>PangoEngineShape</TITLE> -<FILE>pango-engine-shape</FILE> -PangoEngineShape -PangoEngineShapeClass -PANGO_ENGINE_TYPE_SHAPE -PANGO_ENGINE_SHAPE_DEFINE_TYPE -<SUBSECTION Standard> -PANGO_ENGINE_SHAPE -PANGO_IS_ENGINE_SHAPE -PANGO_TYPE_ENGINE_SHAPE -PANGO_ENGINE_SHAPE_CLASS -PANGO_IS_ENGINE_SHAPE_CLASS -PANGO_ENGINE_SHAPE_GET_CLASS -<SUBSECTION Private> -pango_engine_shape_get_type -</SECTION> - -<SECTION> -<TITLE>Modules</TITLE> -<FILE>modules</FILE> -PangoIncludedModule -PangoMap -PangoMapEntry -pango_find_map -pango_map_get_engine -pango_map_get_engines -pango_module_register -</SECTION> - -<SECTION> -<FILE>pango-renderer</FILE> -PangoRenderer -PangoRenderPart -PANGO_TYPE_RENDER_PART -PangoRendererClass -<TITLE>PangoRenderer</TITLE> -pango_renderer_draw_layout -pango_renderer_draw_layout_line -pango_renderer_draw_glyphs -pango_renderer_draw_glyph_item -pango_renderer_draw_rectangle -pango_renderer_draw_error_underline -pango_renderer_draw_trapezoid -pango_renderer_draw_glyph -pango_renderer_activate -pango_renderer_deactivate -pango_renderer_part_changed -pango_renderer_set_color -pango_renderer_get_color -pango_renderer_set_alpha -pango_renderer_get_alpha -pango_renderer_set_matrix -pango_renderer_get_matrix -pango_renderer_get_layout -pango_renderer_get_layout_line -<SUBSECTION Standard> -PANGO_RENDERER -PANGO_IS_RENDERER -PANGO_TYPE_RENDERER -pango_renderer_get_type -PANGO_RENDERER_CLASS -PANGO_IS_RENDERER_CLASS -PANGO_RENDERER_GET_CLASS -<SUBSECTION Private> -pango_render_part_get_type -PangoRendererPrivate -</SECTION> - -<SECTION> -<TITLE>Win32 Fonts and Rendering</TITLE> -<FILE>win32-fonts</FILE> -pango_win32_get_context -pango_win32_render -pango_win32_render_transformed -pango_win32_render_layout_line -pango_win32_render_layout -pango_win32_get_unknown_glyph -pango_win32_font_get_glyph_index -pango_win32_font_select_font -pango_win32_font_done_font -pango_win32_font_get_metrics_factor -pango_win32_get_debug_flag -pango_win32_get_dc -PangoWin32FontCache -pango_win32_font_cache_new -pango_win32_font_cache_free -pango_win32_font_cache_load -pango_win32_font_cache_loadw -pango_win32_font_cache_unload -pango_win32_font_map_for_display -pango_win32_shutdown_display -pango_win32_font_map_get_font_cache -pango_win32_font_logfont -pango_win32_font_logfontw -pango_win32_font_description_from_logfont -pango_win32_font_description_from_logfontw - -<SUBSECTION Private> -STRICT -</SECTION> - -<SECTION> -<TITLE>FreeType Fonts and Rendering</TITLE> -<FILE>freetype-fonts</FILE> -PangoFT2FontMap -pango_ft2_font_map_new -pango_ft2_font_map_set_resolution -pango_ft2_font_map_create_context -PangoFT2SubstituteFunc -pango_ft2_font_map_set_default_substitute -pango_ft2_font_map_substitute_changed -pango_ft2_get_context -pango_ft2_render -pango_ft2_render_transformed -pango_ft2_render_layout_line -pango_ft2_render_layout_line_subpixel -pango_ft2_render_layout -pango_ft2_render_layout_subpixel -pango_ft2_get_unknown_glyph -pango_ft2_font_get_kerning -pango_ft2_font_get_face -pango_ft2_font_get_coverage -pango_ft2_font_map_for_display -pango_ft2_shutdown_display -<SUBSECTION Standard> -PANGO_TYPE_FT2_FONT_MAP -PANGO_FT2_FONT_MAP -PANGO_FT2_IS_FONT_MAP -<SUBSECTION Private> -pango_ft2_font_map_get_type -STRICT -</SECTION> - -<SECTION> -<TITLE>Xft Fonts and Rendering</TITLE> -<FILE>xft-fonts</FILE> -PangoXftFont -PangoXftFontMap -pango_xft_get_context -pango_xft_get_font_map -pango_xft_set_default_substitute -PangoXftSubstituteFunc -pango_xft_substitute_changed -pango_xft_shutdown_display -pango_xft_font_get_font -pango_xft_font_get_display -pango_xft_font_has_char -pango_xft_font_lock_face -pango_xft_font_unlock_face -pango_xft_font_get_glyph -pango_xft_font_get_unknown_glyph -PangoXftRenderer -PangoXftRendererClass - -pango_xft_renderer_new -pango_xft_renderer_set_draw -pango_xft_renderer_set_default_color -pango_xft_render -pango_xft_picture_render -pango_xft_render_transformed -pango_xft_render_layout_line -pango_xft_render_layout -<SUBSECTION Standard> -PANGO_TYPE_XFT_FONT -PANGO_XFT_FONT -PANGO_XFT_IS_FONT -PANGO_TYPE_XFT_FONT_MAP -PANGO_XFT_FONT_MAP -PANGO_XFT_IS_FONT_MAP -PANGO_XFT_RENDERER -PANGO_IS_XFT_RENDERER -PANGO_TYPE_XFT_RENDERER -PANGO_XFT_RENDERER_CLASS -PANGO_IS_XFT_RENDERER_CLASS -PANGO_XFT_RENDERER_GET_CLASS - -<SUBSECTION Private> -PangoXftRendererPrivate -pango_xft_font_get_type -pango_xft_font_map_get_type -pango_xft_renderer_get_type -</SECTION> - -<SECTION> -<TITLE>Cairo Rendering</TITLE> -<FILE>pangocairo</FILE> -PangoCairoFont -PangoCairoFontMap -pango_cairo_font_map_get_default -pango_cairo_font_map_set_default -pango_cairo_font_map_new -pango_cairo_font_map_new_for_font_type -pango_cairo_font_map_get_font_type -pango_cairo_font_map_set_resolution -pango_cairo_font_map_get_resolution -pango_cairo_font_map_create_context -pango_cairo_font_get_scaled_font -pango_cairo_context_set_resolution -pango_cairo_context_get_resolution -pango_cairo_context_set_font_options -pango_cairo_context_get_font_options -PangoCairoShapeRendererFunc -pango_cairo_context_set_shape_renderer -pango_cairo_context_get_shape_renderer -pango_cairo_create_context -pango_cairo_update_context -pango_cairo_create_layout -pango_cairo_update_layout -pango_cairo_show_glyph_string -pango_cairo_show_glyph_item -pango_cairo_show_layout_line -pango_cairo_show_layout -pango_cairo_show_error_underline -pango_cairo_glyph_string_path -pango_cairo_layout_line_path -pango_cairo_layout_path -pango_cairo_error_underline_path -<SUBSECTION Standard> -PANGO_CAIRO_FONT -PANGO_CAIRO_FONT_MAP -PANGO_IS_CAIRO_FONT -PANGO_IS_CAIRO_FONT_MAP -PANGO_TYPE_CAIRO_FONT -PANGO_TYPE_CAIRO_FONT_MAP -pango_cairo_font_get_type -pango_cairo_font_map_get_type -</SECTION> - -<SECTION> -<TITLE>CoreText Fonts</TITLE> -<FILE>coretext-fonts</FILE> -pango_core_text_font_get_ctfont -<SUBSECTION Standard> -PANGO_CAIRO_CORE_TEXT_FONT -PANGO_CAIRO_CORE_TEXT_FONT_CLASS -PANGO_CAIRO_CORE_TEXT_FONT_GET_CLASS -PANGO_CAIRO_CORE_TEXT_FONT_MAP -PANGO_CORE_TEXT_FONT -PANGO_CORE_TEXT_FONT_CLASS -PANGO_CORE_TEXT_FONT_GET_CLASS -PANGO_CORE_TEXT_FONT_MAP -PANGO_CORE_TEXT_FONT_MAP_CLASS -PANGO_CORE_TEXT_FONT_MAP_GET_CLASS -PANGO_CORE_TEXT_IS_FONT_MAP -PANGO_IS_CAIRO_CORE_TEXT_FONT_CLASS -PANGO_IS_CAIRO_CORE_TEXT_FONT_MAP -PANGO_IS_CORE_TEXT_FONT -PANGO_IS_CORE_TEXT_FONT_CLASS -PANGO_IS_CORE_TEXT_FONT_MAP_CLASS -PANGO_TYPE_CAIRO_CORE_TEXT_FONT -PANGO_TYPE_CAIRO_CORE_TEXT_FONT_MAP -PANGO_TYPE_CORE_TEXT_FONT -PANGO_TYPE_CORE_TEXT_FONT_MAP -PangoCairoCoreTextFont -PangoCairoCoreTextFontClass -PangoCairoCoreTextFontMap -PangoCoreTextFace -PangoCoreTextFamily -PangoCoreTextFont -PangoCoreTextFontClass -PangoCoreTextFontMap -PangoCoreTextFontMapClass -PangoCoreTextFontPrivate -pango_cairo_core_text_font_get_type -pango_cairo_core_text_font_map_get_type -pango_core_text_font_get_type -pango_core_text_font_map_get_type -</SECTION> - -<SECTION> -<FILE>pangofc-fontmap</FILE> -<TITLE>PangoFcFontMap</TITLE> -PangoFcFontMap -PangoFcFontMapClass -pango_fc_font_map_create_context -PangoFcDecoderFindFunc -pango_fc_font_map_add_decoder_find_func -pango_fc_font_map_find_decoder -pango_fc_font_map_cache_clear -pango_fc_font_map_config_changed -pango_fc_font_map_shutdown -pango_fc_font_map_set_config -pango_fc_font_map_get_config -PangoFcSubstituteFunc -pango_fc_font_map_set_default_substitute -pango_fc_font_map_substitute_changed -pango_fc_font_description_from_pattern -PANGO_FC_FONT_FEATURES -PANGO_FC_GRAVITY -PANGO_FC_VERSION -PANGO_FC_PRGNAME -PANGO_FC_FONT_VARIATIONS -<SUBSECTION Standard> -PANGO_FC_FONT_MAP -PANGO_IS_FC_FONT_MAP -PANGO_TYPE_FC_FONT_MAP -PANGO_FC_FONT_MAP_CLASS -PANGO_IS_FC_FONT_MAP_CLASS -PANGO_FC_FONT_MAP_GET_CLASS - -<SUBSECTION Private> -PangoFcFontMapPrivate -pango_fc_font_map_get_type -</SECTION> - - -<SECTION> -<FILE>pangofc-font</FILE> -<TITLE>PangoFcFont</TITLE> -PangoFcFont -PangoFcFontClass -pango_fc_font_lock_face -pango_fc_font_unlock_face -pango_fc_font_has_char -pango_fc_font_get_glyph -pango_fc_font_get_unknown_glyph -pango_fc_font_kern_glyphs -pango_fc_font_get_languages -pango_fc_font_get_pattern -<SUBSECTION Standard> -PANGO_FC_FONT -PANGO_IS_FC_FONT -PANGO_TYPE_FC_FONT -PANGO_FC_FONT_CLASS -PANGO_IS_FC_FONT_CLASS -PANGO_FC_FONT_GET_CLASS -<SUBSECTION Private> -pango_fc_font_get_type -</SECTION> - -<SECTION> -<FILE>pangofc-decoder</FILE> -<TITLE>PangoFcDecoder</TITLE> -PangoFcDecoder -PangoFcDecoderClass -pango_fc_decoder_get_charset -pango_fc_decoder_get_glyph -<SUBSECTION Standard> -PANGO_FC_DECODER -PANGO_IS_FC_DECODER -PANGO_TYPE_FC_DECODER -pango_fc_decoder_get_type -PANGO_FC_DECODER_CLASS -PANGO_IS_FC_DECODER_CLASS -PANGO_FC_DECODER_GET_CLASS -</SECTION> - -<SECTION> -<TITLE>OpenType Font Handling</TITLE> -<FILE>opentype</FILE> -PangoOTTag -PangoOTInfo -PangoOTBuffer -PangoOTGlyph -PangoOTRuleset -PangoOTRulesetDescription -PangoOTTableType -PangoOTFeatureMap -PANGO_OT_TAG_MAKE -PANGO_OT_TAG_MAKE_FROM_STRING -PANGO_OT_ALL_GLYPHS -PANGO_OT_NO_FEATURE -PANGO_OT_NO_SCRIPT -PANGO_OT_DEFAULT_LANGUAGE -PANGO_OT_TAG_DEFAULT_LANGUAGE -PANGO_OT_TAG_DEFAULT_SCRIPT -pango_ot_info_get -pango_ot_info_find_script -pango_ot_info_find_language -pango_ot_info_find_feature -pango_ot_info_list_scripts -pango_ot_info_list_languages -pango_ot_info_list_features -pango_ot_buffer_new -pango_ot_buffer_destroy -pango_ot_buffer_clear -pango_ot_buffer_add_glyph -pango_ot_buffer_set_rtl -pango_ot_buffer_set_zero_width_marks -pango_ot_buffer_get_glyphs -pango_ot_buffer_output -pango_ot_ruleset_get_for_description -pango_ot_ruleset_new -pango_ot_ruleset_new_for -pango_ot_ruleset_new_from_description -pango_ot_ruleset_add_feature -pango_ot_ruleset_maybe_add_feature -pango_ot_ruleset_maybe_add_features -pango_ot_ruleset_get_feature_count -pango_ot_ruleset_substitute -pango_ot_ruleset_position -pango_ot_ruleset_description_copy -pango_ot_ruleset_description_equal -pango_ot_ruleset_description_free -pango_ot_ruleset_description_hash -pango_ot_tag_from_language -pango_ot_tag_from_script -pango_ot_tag_to_language -pango_ot_tag_to_script - -<SUBSECTION Standard> -PANGO_IS_OT_INFO -PANGO_IS_OT_RULESET -PANGO_OT_INFO -PANGO_OT_RULESET -PANGO_TYPE_OT_INFO -PANGO_TYPE_OT_RULESET -pango_ot_info_get_type -pango_ot_ruleset_get_type -</SECTION> - -<SECTION> -<TITLE>Miscellaneous Utilities</TITLE> -<FILE>utils</FILE> -pango_split_file_list -pango_trim_string -pango_read_line -pango_skip_space -pango_scan_word -pango_scan_string -pango_scan_int -pango_parse_enum -pango_parse_style -pango_parse_variant -pango_parse_weight -pango_parse_stretch -pango_log2vis_get_embedding_levels -pango_is_zero_width -pango_quantize_line_geometry -</SECTION> - -<SECTION> -<TITLE>Version Checking</TITLE> -<FILE>pango-version</FILE> -PANGO_VERSION_ENCODE -PANGO_VERSION -PANGO_VERSION_MAJOR -PANGO_VERSION_MINOR -PANGO_VERSION_MICRO -PANGO_VERSION_STRING -PANGO_VERSION_CHECK -pango_version -pango_version_string -pango_version_check -PANGO_VERSION_1_2 -PANGO_VERSION_1_4 -PANGO_VERSION_1_6 -PANGO_VERSION_1_8 -PANGO_VERSION_1_10 -PANGO_VERSION_1_12 -PANGO_VERSION_1_14 -PANGO_VERSION_1_16 -PANGO_VERSION_1_18 -PANGO_VERSION_1_20 -PANGO_VERSION_1_22 -PANGO_VERSION_1_24 -PANGO_VERSION_1_26 -PANGO_VERSION_1_28 -PANGO_VERSION_1_30 -PANGO_VERSION_1_32 -PANGO_VERSION_1_34 -PANGO_VERSION_1_36 -PANGO_VERSION_1_38 -PANGO_VERSION_1_40 -PANGO_VERSION_1_42 -PANGO_VERSION_1_44 -PANGO_VERSION_MIN_REQUIRED -PANGO_VERSION_MAX_ALLOWED -<SUBSECTION Private> -PANGO_UNAVAILABLE -PANGO_AVAILABLE_IN_ALL -PANGO_VERSION_CUR_STABLE -PANGO_VERSION_PREV_STABLE -PANGO_AVAILABLE_IN_1_2 -PANGO_AVAILABLE_IN_1_4 -PANGO_AVAILABLE_IN_1_6 -PANGO_AVAILABLE_IN_1_8 -PANGO_AVAILABLE_IN_1_10 -PANGO_AVAILABLE_IN_1_12 -PANGO_AVAILABLE_IN_1_14 -PANGO_AVAILABLE_IN_1_16 -PANGO_AVAILABLE_IN_1_18 -PANGO_AVAILABLE_IN_1_20 -PANGO_AVAILABLE_IN_1_22 -PANGO_AVAILABLE_IN_1_24 -PANGO_AVAILABLE_IN_1_26 -PANGO_AVAILABLE_IN_1_28 -PANGO_AVAILABLE_IN_1_30 -PANGO_AVAILABLE_IN_1_32 -PANGO_AVAILABLE_IN_1_34 -PANGO_AVAILABLE_IN_1_36 -PANGO_AVAILABLE_IN_1_38 -PANGO_AVAILABLE_IN_1_40 -PANGO_AVAILABLE_IN_1_42 -PANGO_AVAILABLE_IN_1_44 -PANGO_DEPRECATED -PANGO_DEPRECATED_FOR -PANGO_DEPRECATED_IN_1_2 -PANGO_DEPRECATED_IN_1_2_FOR -PANGO_DEPRECATED_IN_1_4 -PANGO_DEPRECATED_IN_1_4_FOR -PANGO_DEPRECATED_IN_1_6 -PANGO_DEPRECATED_IN_1_6_FOR -PANGO_DEPRECATED_IN_1_8 -PANGO_DEPRECATED_IN_1_8_FOR -PANGO_DEPRECATED_IN_1_10 -PANGO_DEPRECATED_IN_1_10_FOR -PANGO_DEPRECATED_IN_1_12 -PANGO_DEPRECATED_IN_1_12_FOR -PANGO_DEPRECATED_IN_1_14 -PANGO_DEPRECATED_IN_1_14_FOR -PANGO_DEPRECATED_IN_1_16 -PANGO_DEPRECATED_IN_1_16_FOR -PANGO_DEPRECATED_IN_1_18 -PANGO_DEPRECATED_IN_1_18_FOR -PANGO_DEPRECATED_IN_1_20 -PANGO_DEPRECATED_IN_1_20_FOR -PANGO_DEPRECATED_IN_1_22 -PANGO_DEPRECATED_IN_1_22_FOR -PANGO_DEPRECATED_IN_1_24 -PANGO_DEPRECATED_IN_1_24_FOR -PANGO_DEPRECATED_IN_1_26 -PANGO_DEPRECATED_IN_1_26_FOR -PANGO_DEPRECATED_IN_1_28 -PANGO_DEPRECATED_IN_1_28_FOR -PANGO_DEPRECATED_IN_1_30 -PANGO_DEPRECATED_IN_1_30_FOR -PANGO_DEPRECATED_IN_1_32 -PANGO_DEPRECATED_IN_1_32_FOR -PANGO_DEPRECATED_IN_1_34 -PANGO_DEPRECATED_IN_1_34_FOR -PANGO_DEPRECATED_IN_1_36 -PANGO_DEPRECATED_IN_1_36_FOR -PANGO_DEPRECATED_IN_1_38 -PANGO_DEPRECATED_IN_1_38_FOR -PANGO_DEPRECATED_IN_1_40 -PANGO_DEPRECATED_IN_1_40_FOR -PANGO_DEPRECATED_IN_1_42 -PANGO_DEPRECATED_IN_1_42_FOR -PANGO_DEPRECATED_IN_1_44 -PANGO_DEPRECATED_IN_1_44_FOR -</SECTION> - -<SECTION> -<TITLE>Vertical Text</TITLE> -<FILE>vertical</FILE> -PangoGravity -PangoGravityHint -PANGO_GRAVITY_IS_IMPROPER -PANGO_GRAVITY_IS_VERTICAL -pango_gravity_get_for_matrix -pango_gravity_get_for_script -pango_gravity_get_for_script_and_width -pango_gravity_to_rotation -<SUBSECTION Standard> -PANGO_TYPE_GRAVITY -PANGO_TYPE_GRAVITY_HINT -<SUBSECTION Private> -pango_gravity_get_type -pango_gravity_hint_get_type -</SECTION> - -<SECTION> -<TITLE>Bidirectional Text</TITLE> -<FILE>bidi</FILE> -PangoDirection -pango_unichar_direction -pango_find_base_dir -pango_get_mirror_char -PangoBidiType -pango_bidi_type_for_unichar -<SUBSECTION Standard> -PANGO_TYPE_BIDI_TYPE -<SUBSECTION Private> -pango_bidi_type_get_type -pango_direction_get_type -</SECTION> diff --git a/docs/pango.toml.in b/docs/pango.toml.in new file mode 100644 index 00000000..3b7c9a0b --- /dev/null +++ b/docs/pango.toml.in @@ -0,0 +1,73 @@ +[library] +namespace = "Pango" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "Internationalized text layout and rendering" +dependencies = [ "GObject-2.0", "HarfBuzz-0.0", "PangoCairo-1.0", + "PangoFc-1.0", "PangoFT2-1.0", "PangoOT-1.0", + "PangoXft-1.0" ] +devhelp = true +search_index = true + + [dependencies."GObject-2.0"] + name = "GObject" + description = "The base type system library" + docs_url = "https://developer.gnome.org/gobject/stable" + + [dependencies."HarfBuzz-0.0"] + name = "HarfBuzz" + description = "A text shaping library" + docs_url = "https://harfbuzz.github.io/" + + [dependencies."PangoCairo-1.0"] + name = "PangoCairo" + description = "Cairo support for Pango" + docs_url = "../PangoCairo/" + + [dependencies."PangoFc-1.0"] + name = "PangoFc" + description = "Fontconfig support for Pango" + docs_url = "../PangoFc/" + + [dependencies."PangoFT2-1.0"] + name = "PangoFT2" + description = "Freetype support for Pango" + docs_url = "../PangoFT2/" + + [dependencies."PangoOT-1.0"] + name = "PangoOT" + description = "OpenType support for Pango" + docs_url = "../PangoOT/" + + [dependencies."PangoXft-1.0"] + name = "PangoXft" + description = "Xft support for Pango" + docs_url = "../PangoXft/" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] +content_files = [ + "pango_rendering.md", + "pango_markup.md", + "pango_fonts.md", + "pango_bidi.md", +] + +content_images = [ + "pango-name.png", + "layout.png", + "pipeline.png", + "rects1.png", + "rects2.png" +] diff --git a/docs/pango_bidi.md b/docs/pango_bidi.md new file mode 100644 index 00000000..27005caa --- /dev/null +++ b/docs/pango_bidi.md @@ -0,0 +1,58 @@ +--- +Title: Bidirectional and Vertical Text +--- + +# Bidirectional Text + +Pango supports bidirectional text (like Arabic and Hebrew) automatically. +Some applications however, need some help to correctly handle bidirectional text. + +The [enum@Pango.Direction] type can be used with [method@Pango.Context.set_base_dir] +to instruct Pango about direction of text, though in most cases Pango detects +that correctly and automatically. For application that need more direct +control over bidirectional setting of text, Pango provides APIs such as +[func@unichar_direction], [func@find_base_dir], [func@get_mirror_char] +or [type_func@Pango.BidiType.for_unichar]. + +# Vertical Text + +Pango is not only capable of vertical text layout, it can handle mixed vertical +and non-vertical text correctly. This section describes the types used for setting +vertical text parameters. + +The way this is implemented is through the concept of *gravity*. Gravity of +normal Latin text is south. A gravity value of east means that glyphs will be +rotated ninety degrees counterclockwise. So, to render vertical text one needs +to set the gravity and rotate the layout using the matrix machinery already +in place. This has the huge advantage that most algorithms working on a +[class@Pango.Layout] do not need any change as the assumption that lines run +in the X direction and stack in the Y direction holds even for vertical text +layouts. + +Applications should only need to set base gravity on [class@Pango.Context] in use, +and let Pango decide the gravity assigned to each run of text. This automatically +handles text with mixed scripts. A very common use is to set the context base +gravity to auto using [method@Pango.Context.set_base_gravity] and rotate the layout +normally. Pango will make sure that Asian languages take the right form, while +other scripts are rotated normally. + +The correct way to set gravity on a layout is to set it on the context associated +with it using [method@Pango.Context.set_base_gravity]. The context of a layout can +be accessed using [method@Pango.Layout.get_context]. The currently set base gravity +of the context can be accessed using [method@Pango.Context.get_base_gravity] and the +*resolved* gravity of it using [method@Pango.Context.get_gravity]. The resolved +gravity is the same as the base gravity for the most part, except that if the base +gravity is set to `PANGO_GRAVITY_AUTO`, the resolved gravity will depend on the +current matrix set on context, and is derived using [type_func@Pango.Gravity.get_for_matrix]. + +The next thing an application may want to set on the context is the *gravity hint*. +A [enum@Pango.GravityHint] instructs how different scripts should react to the set +base gravity. + +Font descriptions have a gravity property too, that can be set using +[method@Pango.FontDescription.set_gravity] and accessed using +[method@Pango.FontDescription.get_gravity]. However, those are rarely useful +from application code and are mainly used by `PangoLayout` internally. + +Last but not least, one can create `PangoAttributes` for gravity and gravity +hint using [func@attr_gravity_new] and [func@attr_gravity_hint_new]. diff --git a/docs/pango_cairo.md b/docs/pango_cairo.md new file mode 100644 index 00000000..2edd8ba8 --- /dev/null +++ b/docs/pango_cairo.md @@ -0,0 +1,129 @@ +--- +Title: Rendering with Cairo +--- + +# Rendering with Cairo + +The Cairo library is a vector graphics library with a powerful rendering model. +It has such features as anti-aliased primitives, alpha-compositing, and gradients. +Multiple backends for Cairo are available, to allow rendering to images, to PDF +files, and to the screen on X and on other windowing systems. The functions in +this section allow using Pango to render to Cairo surfaces. + +Using Pango with Cairo is straightforward. A `PangoContext` created with +pango_cairo_font_map_create_context() can be used on any Cairo context (`cairo_t`), +but needs to be updated to match the current transformation matrix and target +surface of the Cairo context using pango_cairo_update_context(). The convenience +functions pango_cairo_create_layout() and pango_cairo_update_layout() handle +the common case where the program doesn't need to manipulate the properties of +the `PangoContext`. + +When you get the metrics of a layout or of a piece of a layout using functions +such as pango_layout_get_extents(), the reported metrics are in user-space +coordinates. If a piece of text is 10 units long, and you call +`cairo_scale (cr, 2.0)`, it still is more-or-less 10 units long. However, the +results will be affected by hinting (that is, the process of adjusting the text +to look good on the pixel grid), so you shouldn't assume they are completely +independent of the current transformation matrix. Note that the basic metrics +functions in Pango report results in integer Pango units. To get to the floating +point units used in Cairo divide by `PANGO_SCALE`. + +## Using Pango with Cairo + +``` +#include <math.h> +#include <pango/pangocairo.h> + +#define RADIUS 150 +#define N_WORDS 10 +#define FONT "Sans Bold 27" + +static void +draw_text (cairo_t *cr) +{ + PangoLayout *layout; + PangoFontDescription *desc; + int i; + + /* Center coordinates on the middle of the region we are drawing */ + cairo_translate (cr, RADIUS, RADIUS); + + /* Create a PangoLayout, set the font and text */ + layout = pango_cairo_create_layout (cr); + + pango_layout_set_text (layout, "Text", -1); + desc = pango_font_description_from_string (FONT); + pango_layout_set_font_description (layout, desc); + pango_font_description_free (desc); + + /* Draw the layout N_WORDS times in a circle */ + for (i = 0; i < N_WORDS; i++) + { + int width, height; + double angle = (360. * i) / N_WORDS; + double red; + + cairo_save (cr); + + /* Gradient from red at angle == 60 to blue at angle == 240 */ + red = (1 + cos ((angle - 60) * G_PI / 180.)) / 2; + cairo_set_source_rgb (cr, red, 0, 1.0 - red); + + cairo_rotate (cr, angle * G_PI / 180.); + + /* Inform Pango to re-layout the text with the new transformation */ + pango_cairo_update_layout (cr, layout); + + pango_layout_get_size (layout, &width, &height); + cairo_move_to (cr, - ((double)width / PANGO_SCALE) / 2, - RADIUS); + pango_cairo_show_layout (cr, layout); + + cairo_restore (cr); + } + + /* free the layout object */ + g_object_unref (layout); +} + +int +main (int argc, char **argv) +{ + cairo_t *cr; + char *filename; + cairo_status_t status; + cairo_surface_t *surface; + + if (argc != 2) + { + g_printerr ("Usage: cairosimple OUTPUT_FILENAME\n"); + return 1; + } + + filename = argv[1]; + + surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, + 2 * RADIUS, 2 * RADIUS); + cr = cairo_create (surface); + + cairo_set_source_rgb (cr, 1.0, 1.0, 1.0); + cairo_paint (cr); + draw_text (cr); + cairo_destroy (cr); + + status = cairo_surface_write_to_png (surface, filename); + cairo_surface_destroy (surface); + + if (status != CAIRO_STATUS_SUCCESS) + { + g_printerr ("Could not save png to '%s'\n", filename); + return 1; + } + + return 0; +} +``` + +Once you build and run the example code above, you should see the +following result: + +![Output of rotated-example](rotated-text.png) diff --git a/docs/pango_fonts.md b/docs/pango_fonts.md new file mode 100644 index 00000000..776dba71 --- /dev/null +++ b/docs/pango_fonts.md @@ -0,0 +1,65 @@ +--- +Title: Fonts and Glyphs +--- + +# Fonts + +Pango supports a flexible architecture where a particular rendering architecture +can supply an implementation of fonts. The `PangoFont` structure represents an +abstract rendering-system-independent font. Pango provides routines to list +available fonts, and to load a font matching a given description. + +Conceptually, Pango groups fonts into faces and families which are identified +by a name. A *font face* provides the different sizes of a single font style. +A *font family* provides the available styles of a font. + +As an example, "Helvetica" is a family, "Helvetica Bold" is a face of this +family, and "Helvetica Bold 12pt" is a concrete font of this face. + +# Font Enumeration + +The central object for dealing with the available fonts on a system and caching +loaded fonts is a [class@Pango.FontMap]. An application typically uses a single +font map. + +Since the font map depends on the rendering architecture in use, you'll need to +use the backend function pango_cairo_font_map_get_default() to obtain the default +fontmap. Depending on the platform, it will return a `PangoCairoFcFontMap`, a +`PangoCairoWin32FontMap` or a `PangoCairoCoreTextFontMap`. + +Once you have a fontmap, you can enumerate the available font families with +[method@Pango.FontMap.list_families]. To enumerate the faces of a font family, +use [method@Pango.FontFamily.list_faces]. + +# Font Descriptions + +Since loading fonts uses system resources, Pango provides a way to describe +a font without loading it. A [struct@Pango.FontDescription] is a struct that +contains enough information to load a concrete font with +[method@Pango.FontMap.load_font] or [method@Pango.Context.load_font]. You can +obtain a font description from a font face using [method@Pango.FontFace.describe], +or by parsing a string such as + + Helvetica Bold 12pt + +with [type_func@Pango.FontDescription.from_string]. + +# Glyphs + +A font provides information about glyphs and how to position and render them. +The Pango rendering pipeline uses this information to create a +[struct@Pango.GlyphString], which contains the glyphs corresponding to the +characters in the text and related information such as glyph positions and sizes, +and clustering information (i.e. which glyphs correspond to which characters). + +![A glyph string](rects3.png) + +A glyph is identified by a [alias@Pango.Glyph], which is a numeric ID. Note that +glyph IDs are font-specific: the same character can be represented by diffferent +glyph IDs in different fonts. + +The mapping between characters and glyphs is in general neither 1-1 nor a map: +a single glyph may represent multiple characters (as is the case with ligatures), +a single character may be represented by multiple glyphs (for example, when +combining accents and base character), and in complex scripts, multiple characters +may form clusters that get rearranged and represented by multiple glyphs. diff --git a/docs/pango_markup.md b/docs/pango_markup.md new file mode 100644 index 00000000..dc6047d3 --- /dev/null +++ b/docs/pango_markup.md @@ -0,0 +1,184 @@ +--- +Title: Text Attributes and Markup +--- + +# Text Attributes + +Attributed text is used in a number of places in Pango. It is used as the +input to the itemization process and also when creating a [class@Pango.Layout]. + +Attributes can influence the various stages of the rendering pipeline. For example, +font or size attributes will influence the font selection that is happening during +itemization, font features and letterspacing attributes will influence shaping, and +color or underline attributes will be used for rendering. + +Pango uses a simple structs for individual attributes, such as +[struct@Pango.AttrColor] or [struct@Pango.AttrFontDesc]. Each attribute has a type, +and a start and end index that determine the range of characters that the attribute +applies to. See the [enum@Pango.AttrType] enumeration for all the possible +attribute types. + +Attributes rarely come alone. Pango uses the [struct@Pango.AttrList] structure +to hold all attributes that apply to a piece of text. + +# Pango Markup + +Frequently, you want to display some text to the user with attributes applied to +part of the text (for example, you might want bold or italicized words). With the +base Pango interfaces, you could create a [struct@Pango.AttrList] and apply it to +the text; the problem is that you'd need to apply attributes to some numeric range +of characters, for example "characters 12-17." This is broken from an +internationalization standpoint; once the text is translated, the word you wanted +to italicize could be in a different position. + +The solution is to include the text attributes in the string to be translated. +Pango provides this feature with a small markup language. You can parse a marked-up +string into the string text plus a [struct@Pango.AttrList] using either of +[func@parse_markup] or [func@markup_parser_new]. + +A simple example of a marked-up string might be: + +``` +<span foreground="blue" size="x-large">Blue text</span> is <i>cool</i>!" +``` + +Pango uses GMarkup to parse this language, which means that XML features +such as numeric character entities such as `©` for © can be used too. + +The root tag of a marked-up document is `<markup>`, but pango_parse_markup() +allows you to omit this tag, so you will most likely never need to use it. +The most general markup tag is `<span>`, then there are some convenience +tags. + +## The `<span>` Attributes + +font +font_desc +: A font description string, such as "Sans Italic 12". See + pango_font_description_from_string() for a description of the format of + the string representation. Note that any other span attributes will override + this description. So if you have "Sans Italic" and also a style="normal" + attribute, you will get Sans normal, not italic. + +font_family +face +: A font family name. + +font_size +size +: Font size in 1024ths of a point, or one of the absolute sizes 'xx-small', + 'x-small', 'small', 'medium', 'large', 'x-large', 'xx-large', or one of the + relative sizes 'smaller' or 'larger'. If you want to specify a absolute size, + it's usually easier to take advantage of the ability to specify a partial font + description using 'font'; you can use font='12.5' rather than size='12800'. + +font_style +style +: One of 'normal', 'oblique', 'italic'. + +font_weight +weight +: One of 'ultralight', 'light', 'normal', 'bold', 'ultrabold', 'heavy', or a + numeric weight. + +font_variant +variant +: One of 'normal' or 'smallcaps'. + +font_stretch +stretch +: One of 'ultracondensed', 'extracondensed', + 'condensed', 'semicondensed', 'normal', 'semiexpanded', 'expanded', + 'extraexpanded', 'ultraexpanded'. + +font_features +: A comma-separated list of OpenType font feature settings, in the same syntax as + accepted by CSS. E.g: `font_features='dlig=1, -kern, afrc on'`. + +foreground +fgcolor +color +: An RGB color specification such as '#00FF00' or a color name such as 'red'. + Since 1.38, an RGBA color specification such as '#00FF007F' will be interpreted + as specifying both a foreground color and foreground alpha. + +background +bgcolor +: An RGB color specification such as '#00FF00' or a color name such as 'red'. + Since 1.38, an RGBA color specification such as '#00FF007F' will be interpreted + as specifying both a background color and background alpha. + +alpha +fgalpha +: An alpha value for the foreground color, either a plain integer between 1 and + 65536 or a percentage value like '50%'. + +background_alpha +bgalpha +: An alpha value for the background color, either a plain integer between 1 and + 65536 or a percentage value like '50%'. + +underline +: One of 'none', 'single', 'double', 'low', 'error'. + +underline_color +: The color of underlines; an RGB color specification such as '#00FF00' or a color + name such as 'red'. + +rise +: Vertical displacement, in Pango units. Can be negative for subscript, positive + for superscript. + +strikethrough +: 'true' or 'false' whether to strike through the text. + +strikethrough_color +: The color of strikethrough lines; an RGB color specification such as '#00FF00' + or a color name such as 'red'. + +fallback +: 'true' or 'false' whether to enable fallback. If disabled, then characters will + only be used from the closest matching font on the system. No fallback will be + done to other fonts on the system that might contain the characters in the text. + Fallback is enabled by default. Most applications should not disable fallback. + +lang +: A language code, indicating the text language. + +letter_spacing +: Inter-letter spacing in 1024ths of a point. + +gravity +: One of 'south', 'east', 'north', 'west', 'auto'. + +gravity_hint +: One of 'natural', 'strong', 'line'. + +## Convenience Tags + +`<b>` +: Bold + +`<big>` +: Makes font relatively larger, equivalent to `<span size="larger">` + +`<i>` +: Italic + +`<s>` +: Strikethrough + +`<sub>` +: Subscript + +`<sup>` +: Superscript + +`<small>` +: Makes font relatively smaller, equivalent to `<span size="smaller">` + +`<tt>` +: Monospace font + +`<u>` +: Underline diff --git a/docs/pango_markup.sgml b/docs/pango_markup.sgml deleted file mode 100644 index c2ba377c..00000000 --- a/docs/pango_markup.sgml +++ /dev/null @@ -1,301 +0,0 @@ -<refentry id="PangoMarkupFormat" revision="11 Dec 2002"> -<refmeta> -<refentrytitle>Text Attribute Markup</refentrytitle> -<manvolnum>3</manvolnum> -<refmiscinfo>Pango Library</refmiscinfo> -</refmeta> - -<refnamediv> -<refname>Text Attribute Markup</refname><refpurpose>Simple -markup language to encode text with attributes</refpurpose> -</refnamediv> - -<refsect1 id="PangoMarkupFormatLanguage"> -<title>Pango Text Attribute Markup Language</title> - -<para> -Frequently, you want to display some text to the user with attributes -applied to part of the text (for example, you might want bold or -italicized words). With the base Pango interfaces, you could create a -<link linkend="PangoAttrList">PangoAttrList</link> and apply it to the -text; the problem is that you'd need to apply attributes to some -numeric range of characters, for example "characters 12-17." This is -broken from an internationalization standpoint; once the text is -translated, the word you wanted to italicize could be in a different -position. -</para> - -<para> -The solution is to include the text attributes in the string to be -translated. Pango provides this feature with a small markup language. -You can parse a marked-up string into the string text plus a -<link linkend="PangoAttrList">PangoAttrList</link> using either of -<link linkend="pango-parse-markup">pango_parse_markup()</link> or -<link linkend="pango-markup-parser-new">pango_markup_parser_new()</link>. -</para> - -<para> -A simple example of a marked-up string might be: -<literal>"<span foreground="blue" size="x-large">Blue text</span> is <i>cool</i>!"</literal> -</para> - -<para> -Pango uses #GMarkup to parse this language, which means that XML features -such as numeric character entities such as &#169; for © can -be used too. -</para> - -<para> -The root tag of a marked-up document is <markup>, but <link -linkend="pango-parse-markup">pango_parse_markup()</link> allows you to -omit this tag, so you will most likely never need to use it. The most -general markup tag is <span>, then there are some convenience -tags. <span> has the following attributes: -<variablelist><title><span> attributes</title> - -<varlistentry> -<term>font<footnote id='since_1_21'><para>Since 1.21</para></footnote></term> -<term>font_desc</term> -<listitem><para> -A font description string, such as "Sans Italic 12". See -<link linkend="pango-font-description-from-string">pango_font_description_from_string()</link> -for a description of the format of the string representation . Note that any -other span attributes will override this description. So if you have -"Sans Italic" and also a style="normal" attribute, you will get Sans normal, -not italic.</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_family</term> -<term>face</term> -<listitem><para> -A font family name -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_size<footnoteref linkend='since_1_21'/></term> -<term>size</term> -<listitem><para> -Font size in 1024ths of a point, or one of the absolute sizes -'xx-small', 'x-small', 'small', 'medium', 'large', 'x-large', -'xx-large', or one of the relative sizes 'smaller' or 'larger'. -If you want to specify a absolute size, it's usually easier -to take advantage of the ability to specify a partial -font description using 'font'; you can use -<literal>font='12.5'</literal> rather than -<literal>size='12800'</literal>. -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_style<footnoteref linkend='since_1_21'/></term> -<term>style</term> -<listitem><para> -One of 'normal', 'oblique', 'italic' -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_weight<footnoteref linkend='since_1_21'/></term> -<term>weight</term> -<listitem><para> -One of 'ultralight', 'light', 'normal', 'bold', 'ultrabold', 'heavy', -or a numeric weight -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_variant<footnoteref linkend='since_1_21'/></term> -<term>variant</term> -<listitem><para> -One of 'normal' or 'smallcaps' -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_stretch<footnoteref linkend='since_1_21'/></term> -<term>stretch</term> -<listitem><para> -One of 'ultracondensed', 'extracondensed', 'condensed', -'semicondensed', 'normal', 'semiexpanded', 'expanded', -'extraexpanded', 'ultraexpanded' -</para></listitem> -</varlistentry> - -<varlistentry> -<term>font_features<footnote id='since_1_38'><para>Since 1.38</para></footnote></term> -<listitem><para> -A comma separated list of OpenType font feature settings, in the same -syntax as accepted by CSS. E.g: <literal>font_features='dlig=1, -kern, afrc on'</literal> -</para></listitem> -</varlistentry> - -<varlistentry> -<term>foreground</term> -<term>fgcolor<footnoteref linkend='since_1_21'/></term> -<term>color</term> -<listitem><para> -An RGB color specification such as '#00FF00' or a color name such as -'red'. -Since 1.38, an RGBA color specification such as '#00FF007F' will -be interpreted as specifying both a foreground color and foreground alpha. -</para></listitem> -</varlistentry> - -<varlistentry> -<term>background</term> -<term>bgcolor<footnoteref linkend='since_1_21'/></term> -<listitem><para> -An RGB color specification such as '#00FF00' or a color name such as -'red'. -Since 1.38, an RGBA color specification such as '#00FF007F' will -be interpreted as specifying both a background color and background alpha. -</para></listitem> -</varlistentry> - -<varlistentry> -<term>alpha</term> -<term>fgalpha<footnoteref linkend='since_1_38'/></term> -<listitem><para> -An alpha value for the foreground color, either a plain integer between 1 and 65536 -or a percentage value like '50%'. -</para></listitem> -</varlistentry> - -<varlistentry> -<term>background_alpha</term> -<term>bgalpha<footnoteref linkend='since_1_38'/></term> -<listitem><para> -An alpha value for the background color, either a plain integer between 1 and 65536 -or a percentage value like '50%'. -</para></listitem> -</varlistentry> - -<varlistentry><term>underline</term> -<listitem><para> -One of 'none', 'single', 'double', 'low', 'error' -</para></listitem> -</varlistentry> - -<varlistentry><term>underline_color</term> -<listitem><para> -The color of underlines; an RGB color specification such as '#00FF00' -or a color name such as 'red' -</para></listitem> -</varlistentry> - -<varlistentry><term>rise</term> -<listitem><para> -Vertical displacement, in Pango units. Can be negative for -subscript, positive for superscript. -</para></listitem> -</varlistentry> - -<varlistentry><term>strikethrough</term> -<listitem><para> -'true' or 'false' whether to strike through the text -</para></listitem> -</varlistentry> - -<varlistentry><term>strikethrough_color</term> -<listitem><para> -The color of strikethrough lines; an RGB color specification such as -'#00FF00' or a color name such as 'red' -</para></listitem> -</varlistentry> - -<varlistentry><term>fallback</term> -<listitem><para> -'true' or 'false' whether to enable fallback. If disabled, then characters -will only be used from the closest matching font on the system. No fallback -will be done to other fonts on the system that might contain the characters -in the text. Fallback is enabled by default. Most applications should not -disable fallback. -</para></listitem> -</varlistentry> - -<varlistentry><term>lang</term> -<listitem><para> -A language code, indicating the text language -</para></listitem> -</varlistentry> - -<varlistentry><term>letter_spacing</term> -<listitem><para> -Inter-letter spacing in 1024ths of a point. -</para></listitem> -</varlistentry> - -<varlistentry><term>gravity</term> -<listitem><para> -One of 'south', 'east', 'north', 'west', 'auto'. -</para></listitem> -</varlistentry> - -<varlistentry><term>gravity_hint</term> -<listitem><para> -One of 'natural', 'strong', 'line'. -</para></listitem> -</varlistentry> - -</variablelist> - -</para> - -<para> -The following convenience tags are provided: - -<variablelist><title>Convenience tags</title> -<varlistentry><term>b</term> -<listitem><para> -Bold -</para></listitem> -</varlistentry> -<varlistentry><term>big</term> -<listitem><para> -Makes font relatively larger, equivalent to <span size="larger"> -</para></listitem> -</varlistentry> -<varlistentry><term>i</term> -<listitem><para> -Italic -</para></listitem> -</varlistentry> -<varlistentry><term>s</term> -<listitem><para> -Strikethrough -</para></listitem> -</varlistentry> -<varlistentry><term>sub</term> -<listitem><para> -Subscript -</para></listitem> -</varlistentry> -<varlistentry><term>sup</term> -<listitem><para> -Superscript -</para></listitem> -</varlistentry> -<varlistentry><term>small</term> -<listitem><para> -Makes font relatively smaller, equivalent to <span size="smaller"> -</para></listitem> -</varlistentry> -<varlistentry><term>tt</term> -<listitem><para> -Monospace font -</para></listitem> -</varlistentry> -<varlistentry><term>u</term> -<listitem><para> -Underline -</para></listitem> -</varlistentry> -</variablelist> - -</para> - -</refsect1> - -</refentry> diff --git a/docs/pango_rendering.md b/docs/pango_rendering.md new file mode 100644 index 00000000..2fd61e93 --- /dev/null +++ b/docs/pango_rendering.md @@ -0,0 +1,35 @@ +--- +Title: The Rendering Pipeline +--- + +# The Rendering Pipeline + +The Pango rendering pipeline takes a string of Unicode characters, converts them +it into glyphs, and renders them on some output medium. This section describes the +various stages of this pipeline and the APIs that implement them. + +![Pango Rendering Pipeline](pipeline.png) + +Itemization +: breaks a piece of text into segments with consistent direction and shaping + properies. Among other things, this determines which font to use for each + character. Use pango_itemize() or pango_itemize_with_base_dir() to itemize text. + +Shaping +: converts characters into glyphs. Use pango_shape(), pango_shape_full() or + pango_shape_with_flags() to shape text. + +Line Breaking +: determines where line breaks should be inserted into a sequence of glyphs. + The function pango_break() determines possible line breaks. The actual line + breaking is done by [class@Pango.Layout]. + +Justification +: adjusts inter-word spacing to form lines of even length. This is done by + [class@Pango.Layout]. + +Rendering +: takes a string of positioned glyphs, and renders them onto a surface. This is + accomplished by a [class@Pango.Renderer] object. The functions + pango_cairo_show_glyph_string() and pango_cairo_show_layout() use a + [class@Pango.Renderer] to draw text onto a cairo surface. diff --git a/docs/pango_xft.md b/docs/pango_xft.md new file mode 100644 index 00000000..340506d2 --- /dev/null +++ b/docs/pango_xft.md @@ -0,0 +1,26 @@ +Title: Xft Fonts and Rendering + +The Xft library is a library for displaying fonts on the X window +system; internally it uses the fontconfig library to locate font +files, and the FreeType library to load and render fonts. The +Xft backend is the recommended Pango font backend for screen +display with X. (The Cairo back end is another possibility.) + +Using the Xft backend is generally straightforward; +[func@PangoXft.get_context] creates a context for a specified display +and screen. You can then create a [class@Pango.Layout] with that context +and render it with [func@PangoXft.render_layout]. At a more advanced +level, the low-level fontconfig options used for rendering fonts +can be affected using [func@PangoXft.set_default_substitute], and +[func@PangoXft.substitute_changed]. + +A range of functions for drawing pieces of a layout, such as individual +layout lines and glyphs strings are provided. You can also directly +create a [class@PangoXft.Renderer]. Finally, in some advanced cases, +it is useful to derive from [class@PangoXft.Renderer]. Deriving from +[class@PangoXft.Renderer] is useful for two reasons. One reason is be +to support custom attributes by overriding `PangoRendererClass` virtual +functions like 'prepare_run' or 'draw_shape'. The other reason is to +customize exactly how the final bits are drawn to the destination by +overriding the `PangoXftRendererClass` virtual functions +'composite_glyphs' and 'composite_trapezoids'. diff --git a/docs/pangocairo.toml.in b/docs/pangocairo.toml.in new file mode 100644 index 00000000..3d41b82f --- /dev/null +++ b/docs/pangocairo.toml.in @@ -0,0 +1,40 @@ +[library] +namespace = "PangoCairo" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "Cairo support for Pango" +dependencies = [ "Pango-1.0", "cairo-1.0" ] +devhelp = true +search_index = true + + [dependencies."Pango-1.0"] + name = "Pango" + description = "A library for layout out and rendering of text" + docs_url = "../Pango/" + + [dependencies."cairo-1.0"] + name = "Cairo" + description = "A vector graphics library" + docs_url = "https://www.cairographics.org/manual/" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] +content_files = [ + "pango_cairo.md", +] + +content_images = [ + "pango-name.png", + "rotated-text.png" +] diff --git a/docs/pangofc.toml.in b/docs/pangofc.toml.in new file mode 100644 index 00000000..061ff072 --- /dev/null +++ b/docs/pangofc.toml.in @@ -0,0 +1,36 @@ +[library] +namespace = "PangoFc" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "Fontconfig support for Pango" +dependencies = [ "Pango-1.0", "fontconfig-2.0" ] +devhelp = true +search_index = true + + [dependencies."Pango-1.0"] + name = "Pango" + description = "A library for layout out and rendering of text" + docs_url = "../Pango/" + + [dependencies."fontconfig-2.0"] + name = "Fontconfig" + description = "A font configuration and enumeration library" + docs_url = "https://www.fontconfig.org" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] + +content_images = [ + "pango-name.png" +] diff --git a/docs/pangoft2.toml.in b/docs/pangoft2.toml.in new file mode 100644 index 00000000..c44dfe7f --- /dev/null +++ b/docs/pangoft2.toml.in @@ -0,0 +1,36 @@ +[library] +namespace = "PangoFT2" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "Freetype support for Pango" +dependencies = [ "Pango-1.0", "freetype2-2.0" ] +devhelp = true +search_index = true + + [dependencies."Pango-1.0"] + name = "Pango" + description = "A library for layout out and rendering of text" + docs_url = "../Pango/" + + [dependencies."freetype2-2.0"] + name = "Freetype" + description = "A font loading and rendering library" + docs_url = "https://www.freetype.org" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] + +content_images = [ + "pango-name.png" +] diff --git a/docs/pangoot.toml.in b/docs/pangoot.toml.in new file mode 100644 index 00000000..531cd640 --- /dev/null +++ b/docs/pangoot.toml.in @@ -0,0 +1,31 @@ +[library] +namespace = "PangoOT" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "OpenType support for Pango" +dependencies = [ "Pango-1.0" ] +devhelp = true +search_index = true + + [dependencies."Pango-1.0"] + name = "Pango" + description = "A library for layout out and rendering of text" + docs_url = "../Pango/" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] + +content_images = [ + "pango-name.png" +] diff --git a/docs/pangoxft.toml.in b/docs/pangoxft.toml.in new file mode 100644 index 00000000..d117b388 --- /dev/null +++ b/docs/pangoxft.toml.in @@ -0,0 +1,39 @@ +[library] +namespace = "PangoXft" +version = "@PANGO_VERSION@" +browse_url = "https://gitlab.gnome.org/GNOME/pango/" +repository_url = "https://gitlab.gnome.org/GNOME/pango.git" +website_url = "https://www.pango.org" +authors = "Owen Taylor, Behdad Esfahbod" +logo_url = "pango-name.png" +license = "GPL-2.1-or-later" +description = "Xft support for Pango" +dependencies = [ "Pango-1.0", "xft-2.0" ] +devhelp = true +search_index = true + + [dependencies."Pango-1.0"] + name = "Pango" + description = "A library for layout out and rendering of text" + docs_url = "../Pango/" + + [dependencies."xft-2.0"] + name = "Xft" + description = "X11 client-side font rendering library" + docs_url = "https://x.org" + +[theme] +name = "basic" +show_index_summary = true + +[source-location] +base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" + +[extra] +content_files = [ + "pango_xft.md" +] + +content_images = [ + "pango-name.png" +] diff --git a/docs/rects3.png b/docs/rects3.png Binary files differnew file mode 100644 index 00000000..4817b7af --- /dev/null +++ b/docs/rects3.png diff --git a/docs/version.xml.in b/docs/version.xml.in deleted file mode 100644 index 8f556477..00000000 --- a/docs/version.xml.in +++ /dev/null @@ -1 +0,0 @@ -@PANGO_VERSION@ diff --git a/docs/xml/gtkdocentities.ent.in b/docs/xml/gtkdocentities.ent.in deleted file mode 100644 index f12c9ff7..00000000 --- a/docs/xml/gtkdocentities.ent.in +++ /dev/null @@ -1,8 +0,0 @@ -<!ENTITY package "@PACKAGE@"> -<!ENTITY package_bugreport "@PACKAGE_BUGREPORT@"> -<!ENTITY package_name "@PACKAGE_NAME@"> -<!ENTITY package_string "@PACKAGE_STRING@"> -<!ENTITY package_tarname "@PACKAGE_TARNAME@"> -<!ENTITY package_url "@PACKAGE_URL@"> -<!ENTITY package_version "@PACKAGE_VERSION@"> -<!ENTITY package_api_version "@PACKAGE_API_VERSION@"> diff --git a/docs/xml/meson.build b/docs/xml/meson.build deleted file mode 100644 index 2a4cf4b7..00000000 --- a/docs/xml/meson.build +++ /dev/null @@ -1,10 +0,0 @@ -ent_conf = configuration_data() -ent_conf.set('PACKAGE', meson.project_name()) -ent_conf.set('PACKAGE_BUGREPORT', 'https://bugzilla.gnome.org/enter_bug.cgi?product=pango') -ent_conf.set('PACKAGE_NAME', meson.project_name()) -ent_conf.set('PACKAGE_STRING', meson.project_name()) -ent_conf.set('PACKAGE_TARNAME', '@0@-@1@'.format(meson.project_name(), meson.project_version())) -ent_conf.set('PACKAGE_URL', 'https://developer.gnome.org/pango/stable') -ent_conf.set('PACKAGE_VERSION', meson.project_version()) -ent_conf.set('PACKAGE_API_VERSION', pango_api_version) -configure_file(input: 'gtkdocentities.ent.in', output: 'gtkdocentities.ent', configuration: ent_conf) |