From 8765051b03ec11d010217b220584ca03c04f85af Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 22 Feb 2021 16:11:48 -0500 Subject: docs: Convert xft section to pango_xft.md --- docs/pango_xft.md | 26 ++++++++++++++++++++++++++ docs/pangoxft.toml.in | 3 +++ 2 files changed, 29 insertions(+) create mode 100644 docs/pango_xft.md (limited to 'docs') 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/pangoxft.toml.in b/docs/pangoxft.toml.in index fa3b1494..d5285e6e 100644 --- a/docs/pangoxft.toml.in +++ b/docs/pangoxft.toml.in @@ -28,6 +28,9 @@ show_index_summary = true base_url = "https://gitlab.gnome.org/GNOME/pango/-/blob/master/" [extra] +content_files = [ + "pango_xft.md" +] content_images = [ "pango-name.png" -- cgit v1.2.1