package cairo2-pango

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Interaction with Pango, a library for laying out and rendering of text.

module Font_map : sig ... end

Interacting with Pango.font_map.

type cairo_font = [ `pangofont | `cairo ] Gobject.obj
val get_scaled_font : cairo_font -> _ Cairo.Scaled_font.t
val set_resolution : Pango.context -> float -> unit

Sets the resolution for the context. This is a scale factor between points specified in a Pango.font_description and Cairo units. The default value is 96, meaning that a 10 point font will be 13 units high. (10 * 96. / 72. = 13.3).

val get_resolution : Pango.context -> float

Gets the resolution for the context.

val set_font_options : Pango.context -> Cairo.Font_options.t -> unit

set_font_options cr options sets the font options used when rendering text with cr. These options override any options that update_context derives from the target surface.

val get_font_options : Pango.context -> Cairo.Font_options.t

Retrieves any font rendering options previously set with set_font_options. This function does not report options that are derived from the target surface by update_context.

val create_context : Cairo.context -> Pango.context

Creates a context object set up to match the current transformation and target surface of the Cairo context. This context can then be used to create a layout using Pango.Layout.create.

val update_context : Cairo.context -> Pango.context -> unit

Updates a Pango.context previously created for use with Cairo to match the current transformation and target surface of a Cairo context. If any layouts have been created for the context, it's necessary to call context_changed on those layouts.

val create_layout : Cairo.context -> Pango.layout

create_layout cr creates a layout object set up to match the current transformation and target surface of the Cairo context cr. This layout can then be used for text measurement with functions like Pango.Layout.get_size or drawing with functions like show_layout. If you change the transformation or target surface for cr, you need to call update_layout.

val update_layout : Cairo.context -> Pango.layout -> unit

update_layout cr layout updates the private Pango.context of layout created with create_layout to match the current transformation and target surface of a Cairo context cr.

val show_layout : Cairo.context -> Pango.layout -> unit

show_layout cr layout draws a layout in the specified cairo context cr. The top-left corner of layout will be drawn at the current point of the cairo context.

val show_error_underline : Cairo.context -> float -> float -> w:float -> h:float -> unit

show_error_underline cr x y w h draw a squiggly line in the cairo context cr that approximately covers the given rectangle in the style of an underline used to indicate a spelling error. (The width w of the underline is rounded to an integer number of up/down segments and the resulting rectangle is centered in the original rectangle).

val layout_path : Cairo.context -> Pango.layout -> unit

layout_path cr layout adds the text in a layout to the current path in cr. The top-left corner of the layout will be at the current point of the cairo context.

val error_underline_path : Cairo.context -> float -> float -> w:float -> h:float -> unit

error_underline_path cr x y w h add a squiggly line to the current path in the cairo context cr that approximately covers the given rectangle in the style of an underline used to indicate a spelling error. (The width w of the underline is rounded to an integer number of up/down segments and the resulting rectangle is centered in the original rectangle).

OCaml

Innovation. Community. Security.