Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

lua-oocairo-matrix(3) [debian man page]

doc::lua-oocairo-matrix(3)				       Lua OO Cairo binding					doc::lua-oocairo-matrix(3)

Name
       lua-oocairo-matrix - Transformation matrix table

Introduction
       Matrix objects are used in Cairo to represent affine transformations like rotation and scaling.	They are used for transforming both fonts
       and paths drawn on surfaces.

       This binding uses normal Lua tables for matrices, with each matrix being an array of six numbers.  You can use any such table when
       supplying a matrix to a method, but the ones returned by this module have a metatable set so that the methods listed below can be called on
       it.

       The "matrix_create" function in the module table can be used to create a new identity matrix.

Methods
       The following methods can be called on a matrix object.	Unless otherwise stated they do not return any values.	The transformations alter
       the matrix you supply by adjusting the numbers in the table, rather than creating a new table.

       mat:invert ()
	   Set mat to its inverse, which will result in a transformation which reverses what it did originally.  Not all matrices have an inverse,
	   and if none can be found then an exception will be thrown.

       mat1:multiply (mat2)
	   Multiply mat1 by mat2, leaving mat2 unchanged.  This has the effect of combining the transformations represented by the two matrices.

       mat:rotate (ang)
	   Apply a rotation by ang radians to mat.

       mat:scale (sx, sy)
	   Apply a scaling transformation to mat.

       mat:transform_distance (x, y)
	   Transform the distance given, using mat, and return two numbers giving the resulting distance.  This will have the same effect as
	   "mat:transform_point()" but without any translation taking place.

       mat:transform_point (x, y)
	   Transform the position of the coordinates, which must be numbers, to the matrix, and return two numbers giving the resulting position.

       mat:translate (x, y)
	   Apply a translation to mat.

1.4								    2011-05-18						doc::lua-oocairo-matrix(3)

Check Out this Related Man Page

doc::lua-oocairo-scaledfont(3)				       Lua OO Cairo binding				    doc::lua-oocairo-scaledfont(3)

Name
       lua-oocairo-scaledfont - Scaled font face object

Introduction
       Scaled font objects represent Cairo font faces which have been scaled to a particular point size.  They can be created from a font face
       object with the "scaled_font_create" function in the main module table (see lua-oocairo(3)), or the "get_scaled_font" method on context
       objects (see lua-oocairo-context(3)).

       Scaled font objects can be compared with the "==" operator.  This will compare the identity of the objects, so different Lua objects which
       refer to the same "cairo_font_face_t" will compare as equal.

Methods
       Scaled font objects provide the following methods.

       font:extents ()
	   Returns a table containing metrics information about the font.  The return value is in the same format as that of the "font_extents"
	   method on context objects (see lua-oocairo-context(3)).

       font:get_ctm ()
	   Returns the coordinate transformation matrix (CTM) associated with the font.  This maps user coordinates into device coordinates on the
	   surface with which the font is used.  See lua-oocairo-matrix(3) for details of the return value type.

       font:get_font_face ()
	   Returns an object representing the unscaled font face used to create this font.  See lua-oocairo-fontface(3) for details of its
	   methods.

       font:get_font_matrix ()
	   Returns the matrix representing the scaling of the font into user coordinates.  See lua-oocairo-matrix(3) for details of the return
	   value type.

       cr:get_font_options ()
	   Returns a font options object (see lua-oocairo-fontopt(3)) containing the rendering options that were supplied when creating this font.

       font:get_scale_matrix ()
	   Returns a matrix table representing the scaling of the font to the coordinate space of the surface it is used on.  This is the matrix
	   obtained by multiplying the font matrix by the surface CTM.	See lua-oocairo-matrix(3) for details of the return value type.  Only
	   available with Cairo 1.8 or better.

       font:get_type ()
	   Returns a string indicating which back-end library provides the font face information.  The return value will be one of the same
	   strings returned by the "get_type" method on a font face object (see lua-oocairo-fontface(3)).

       font:glyph_extents (glyphs)
	   Same as "font:text_extents()", but instead of a string, the glyphs value should be table in the format accepted by the "show_glyphs()"
	   method on context objects (see lua-oocairo-context(3)).

       font:text_extents (text)
	   Returns a table containing measurements of the given UTF-8 text as it would be rendered in this font.  The return value is in the same
	   format as that of the "text_extents" method on context objects (see lua-oocairo-context(3)).

       font:text_to_glyphs (x, y, text)
	   Given some UTF-8 text in the string text, and starting coordinates of x and y, this works out which glyphs need to be drawn to
	   represent the text, and which glyphs correspond to the bytes in text.  The method returns two tables, the first an array of glyphs
	   suitable for supplying to methods like "show_glyphs" and "glyph_extents", and the second is a table of text clusters suitable for
	   supplying to the "show_text_glyphs" method on a context object.

	   Only available with Cairo 1.8 or better.

1.4								    2011-05-18					    doc::lua-oocairo-scaledfont(3)
Man Page