cairo.cc

Alexis Bienvenüe, 10/13/2019 04:20 pm

Download (965 Bytes)

 
1
#include <cairo.h>
2
#include <cairo-pdf.h>
3
#include <pango/pangocairo.h>
4
5
// gcc cairo.cc `pkg-config --cflags --libs cairo pangocairo`
6
7
int main() {
8
  cairo_surface_t *surface;
9
  cairo_t *cr;
10
  cairo_matrix_t matrix;
11
  PangoFontDescription *font_description;
12
  PangoLayout *layout;
13
 
14
  surface = cairo_pdf_surface_create ("cairo.pdf", 150, 120);
15
  cr = cairo_create (surface);
16
  layout = pango_cairo_create_layout(cr);
17
 
18
  font_description = pango_font_description_from_string("Linux Libertine O 12");
19
  if(font_description == NULL) {
20
    printf("! ERROR : font description creation\n");
21
    return(1);
22
  }
23
  pango_layout_set_font_description(layout, font_description);
24
25
  cairo_matrix_init(&matrix, 1.5, 0.1, 0.1, 1.0, 0.0, 0.0);
26
  cairo_set_matrix(cr, &matrix);
27
28
  pango_layout_set_text(layout, "Texte", -1);
29
  cairo_move_to (cr, 50, 50);
30
  pango_cairo_show_layout (cr, layout);
31
32
  cairo_surface_finish(surface);
33
  cairo_surface_destroy(surface);
34
35
  return(0);
36
}