123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- #ifndef __PANGO_MATRIX_H__
- #define __PANGO_MATRIX_H__
- #include <glib.h>
- #include <glib-object.h>
- G_BEGIN_DECLS
- typedef struct _PangoMatrix PangoMatrix;
- struct _PangoMatrix
- {
- double xx;
- double xy;
- double yx;
- double yy;
- double x0;
- double y0;
- };
- #define PANGO_TYPE_MATRIX (pango_matrix_get_type ())
- #define PANGO_MATRIX_INIT { 1., 0., 0., 1., 0., 0. }
- #include <pango/pango-types.h>
- GType pango_matrix_get_type (void) G_GNUC_CONST;
- PangoMatrix *pango_matrix_copy (const PangoMatrix *matrix);
- void pango_matrix_free (PangoMatrix *matrix);
- void pango_matrix_translate (PangoMatrix *matrix,
- double tx,
- double ty);
- void pango_matrix_scale (PangoMatrix *matrix,
- double scale_x,
- double scale_y);
- void pango_matrix_rotate (PangoMatrix *matrix,
- double degrees);
- void pango_matrix_concat (PangoMatrix *matrix,
- const PangoMatrix *new_matrix);
- void pango_matrix_transform_point (const PangoMatrix *matrix,
- double *x,
- double *y);
- void pango_matrix_transform_distance (const PangoMatrix *matrix,
- double *dx,
- double *dy);
- void pango_matrix_transform_rectangle (const PangoMatrix *matrix,
- PangoRectangle *rect);
- void pango_matrix_transform_pixel_rectangle (const PangoMatrix *matrix,
- PangoRectangle *rect);
- double pango_matrix_get_font_scale_factor (const PangoMatrix *matrix) G_GNUC_PURE;
- void pango_matrix_get_font_scale_factors (const PangoMatrix *matrix,
- double *xscale, double *yscale);
- G_END_DECLS
- #endif
|