LIB(poppler, "libpoppler-glib.so.8");
FUNC(poppler, PopplerDocument*, poppler_document_new_from_file, const char*, const char*, GError**);
FUNC(poppler, PopplerDocument*, poppler_document_new_from_fd, int, const char*, GError**);
FUNC(poppler, int, poppler_document_get_n_pages, PopplerDocument*);
FUNC(poppler, PopplerPage*, poppler_document_get_page, PopplerDocument*, int);
FUNC(poppler, void, poppler_page_get_size, PopplerPage*, double*, double*);
FUNC(poppler, void, poppler_page_render_for_printing, PopplerPage*, cairo_t*);

LIB(cairo, "libcairo.so.2");
FUNC(cairo, cairo_surface_t*, cairo_ps_surface_create_for_stream, cairo_write_func_t, void*, double, double);
FUNC(cairo, void, cairo_ps_surface_restrict_to_level, cairo_surface_t*, cairo_ps_level_t);
FUNC(cairo, cairo_surface_t*, cairo_image_surface_create, cairo_format_t, int, int);
FUNC(cairo, cairo_surface_t*, cairo_pdf_surface_create_for_stream, cairo_write_func_t, void*, double, double);
FUNC(cairo, void, cairo_pdf_surface_set_metadata, cairo_surface_t*, cairo_pdf_metadata_t, const char*);
FUNC(cairo, void, cairo_translate, cairo_t*, double, double);
FUNC(cairo, void, cairo_scale, cairo_t*, double, double);
FUNC(cairo, cairo_status_t, cairo_status, cairo_t*);
FUNC(cairo, const char*, cairo_status_to_string, cairo_status_t);
FUNC(cairo, void, cairo_destroy, cairo_t*);
FUNC(cairo, void, cairo_surface_show_page, cairo_surface_t*);
FUNC(cairo, cairo_t*, cairo_create, cairo_surface_t*);
FUNC(cairo, void, cairo_matrix_init, cairo_matrix_t*, double, double, double, double, double, double);
FUNC(cairo, void, cairo_transform, cairo_t*, const cairo_matrix_t*);
FUNC(cairo, void, cairo_save, cairo_t*);
FUNC(cairo, void, cairo_set_source_rgb, cairo_t*, double, double, double);
FUNC(cairo, void, cairo_paint, cairo_t*);
FUNC(cairo, void, cairo_restore, cairo_t*);
FUNC(cairo, void, cairo_surface_flush, cairo_surface_t*);
FUNC(cairo, unsigned char*, cairo_image_surface_get_data, cairo_surface_t*);
FUNC(cairo, void, cairo_surface_finish, cairo_surface_t*);
FUNC(cairo, void, cairo_surface_destroy, cairo_surface_t*);
FUNC(cairo, void, cairo_set_antialias, cairo_t*, cairo_antialias_t);
FUNC(cairo, cairo_font_options_t*, cairo_font_options_create, void);
FUNC(cairo, void, cairo_get_font_options, cairo_t*, cairo_font_options_t*);
FUNC(cairo, void, cairo_font_options_set_antialias, cairo_font_options_t*, cairo_antialias_t);
FUNC(cairo, void, cairo_set_font_options, cairo_t*, const cairo_font_options_t*);
FUNC(cairo, void, cairo_font_options_destroy, cairo_font_options_t*);
