#include <stdio.h>
#include <string.h>
#include <math.h>
#include <cairo.h>
#include <pango/pangocairo.h>
#include "plplotP.h"
#include "drivers.h"
Classes | |
struct | PLCairo |
Defines | |
#define | DPI 72 |
#define | DOWNSCALE 0.1 |
#define | PLCAIRO_DEFAULT_X 720 |
#define | PLCAIRO_DEFAULT_Y 540 |
#define | MAX_STRING_LEN 500 |
#define | MAX_MARKUP_LEN MAX_STRING_LEN * 10 |
#define | NPANGOLOOKUP 5 |
Functions | |
PLCairo * | stream_and_font_setup (PLStream *, int) |
cairo_status_t | write_to_stream (void *, unsigned char *, unsigned int) |
static void | proc_str (PLStream *, EscText *) |
static char * | ucs4_to_pango_markup_format (PLUNICODE *, int, float) |
static void | open_span_tag (char *, PLUNICODE, float, int) |
static void | close_span_tag (char *, int) |
static void | set_current_context (PLStream *) |
static void | poly_line (PLStream *, short *, short *, PLINT) |
static void | rotate_cairo_surface (PLStream *, float, float, float, float, float, float) |
void | plD_bop_cairo (PLStream *) |
void | plD_eop_cairo (PLStream *) |
void | plD_state_cairo (PLStream *, PLINT) |
void | plD_esc_cairo (PLStream *, PLINT, void *) |
void | plD_tidy_cairo (PLStream *) |
void | plD_line_cairo (PLStream *, short, short, short, short) |
void | plD_polyline_cairo (PLStream *, short *, short *, PLINT) |
Variables | |
static int | text_clipping |
static int | text_anti_aliasing |
static int | graphics_anti_aliasing |
static DrvOpt | cairo_options [] |
const char * | plD_DEVICE_INFO_cairo |
const char * | defaultFamilyLookup [NPANGOLOOKUP] |
const char * | envFamilyLookup [NPANGOLOOKUP] |
char | familyLookup [NPANGOLOOKUP][1024] |
const char * | weightLookup [2] |
const char * | styleLookup [3] |
#define DOWNSCALE 0.1 |
#define DPI 72 |
#define MAX_MARKUP_LEN MAX_STRING_LEN * 10 |
#define MAX_STRING_LEN 500 |
#define NPANGOLOOKUP 5 |
#define PLCAIRO_DEFAULT_X 720 |
#define PLCAIRO_DEFAULT_Y 540 |
void close_span_tag | ( | char * | pangoMarkupString, | |
int | upDown | |||
) | [static] |
void open_span_tag | ( | char * | pangoMarkupString, | |
PLUNICODE | fci, | |||
float | fontSize, | |||
int | upDown | |||
) | [static] |
void plD_bop_cairo | ( | PLStream * | pls | ) |
void plD_eop_cairo | ( | PLStream * | pls | ) |
void plD_line_cairo | ( | PLStream * | pls, | |
short | x1a, | |||
short | y1a, | |||
short | x2a, | |||
short | y2a | |||
) |
void plD_tidy_cairo | ( | PLStream * | pls | ) |
void rotate_cairo_surface | ( | PLStream * | pls, | |
float | x11, | |||
float | x12, | |||
float | x21, | |||
float | x22, | |||
float | x0, | |||
float | y0 | |||
) | [static] |
void set_current_context | ( | PLStream * | pls | ) | [static] |
char * ucs4_to_pango_markup_format | ( | PLUNICODE * | ucs4, | |
int | ucs4Len, | |||
float | fontSize | |||
) | [static] |
cairo_status_t write_to_stream | ( | void * | filePointer, | |
unsigned char * | data, | |||
unsigned int | length | |||
) |
DrvOpt cairo_options[] [static] |
Initial value:
{{"text_clipping", DRV_INT, &text_clipping, "Use text clipping (text_clipping=0|1)"}, {"text_anti_aliasing", DRV_INT, &text_anti_aliasing, "Set desired text anti-aliasing (text_anti_aliasing=0|1|2|3). The numbers are in the same order as the cairo_antialias_t enumeration documented at http://cairographics.org/manual/cairo-cairo-t.html#cairo-antialias-t)"}, {"graphics_anti_aliasing", DRV_INT, &graphics_anti_aliasing, "Set desired graphics anti-aliasing (graphics_anti_aliasing=0|1|2|3). The numbers are in the same order as the cairo_antialias_t enumeration documented at http://cairographics.org/manual/cairo-cairo-t.html#cairo-antialias-t"}, {NULL, DRV_INT, NULL, NULL}}
const char* defaultFamilyLookup[NPANGOLOOKUP] |
Initial value:
{ "Arial,Bitstream-Vera-Sans,sans", "Times-Roman,Bitstream-Vera-Serif,serif", "Courier,Bitstream-Vera-Sans-Mono,monospace", "Arial,Bitstream-Vera-Sans,sans,serif", "Arial,Bitstream-Vera-Sans,sans,serif" }
const char* envFamilyLookup[NPANGOLOOKUP] |
Initial value:
{ "PLPLOT_FREETYPE_SANS_FAMILY", "PLPLOT_FREETYPE_SERIF_FAMILY", "PLPLOT_FREETYPE_MONO_FAMILY", "PLPLOT_FREETYPE_SCRIPT_FAMILY", "PLPLOT_FREETYPE_SYMBOL_FAMILY" }
char familyLookup[NPANGOLOOKUP][1024] |
int graphics_anti_aliasing [static] |
const char* plD_DEVICE_INFO_cairo |
const char* styleLookup[3] |
Initial value:
{ "normal", "italic", "oblique" }
int text_anti_aliasing [static] |
int text_clipping [static] |
const char* weightLookup[2] |
Initial value:
{ "normal", "bold" }