#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"
}
1.5.7