#include <stdio.h>
#include <string.h>
#include <math.h>
#include <X11/X.h>
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/cursorfont.h>
#include <cairo.h>
#include <cairo-xlib.h>
#include <pango/pangocairo.h>
#include "plplotP.h"
#include "drivers.h"
Defines | |
#define | MAXPAGES 50 |
#define | DPI 72 |
#define | XWINTTF_DEFAULT_X 720 |
#define | XWINTTF_DEFAULT_Y 540 |
#define | MAX_STRING_LEN 500 |
#define | MAX_MARKUP_LEN MAX_STRING_LEN * 10 |
#define | NPANGOLOOKUP 5 |
Functions | |
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 | get_cursor (PLStream *, PLGraphicsIn *) |
static void | set_current_context (PLStream *) |
static void | poly_line (PLStream *, short *, short *, PLINT) |
void | plD_dispatch_init_xwinttf (PLDispatchTable *pdt) |
void | plD_init_xwinttf (PLStream *) |
void | plD_line_xwinttf (PLStream *, short, short, short, short) |
void | plD_polyline_xwinttf (PLStream *, short *, short *, PLINT) |
void | plD_eop_xwinttf (PLStream *) |
void | plD_bop_xwinttf (PLStream *) |
void | plD_tidy_xwinttf (PLStream *) |
void | plD_state_xwinttf (PLStream *, PLINT) |
void | plD_esc_xwinttf (PLStream *, PLINT, void *) |
Variables | |
const char * | plD_DEVICE_INFO_xwinttf = "xwinttf:TrueType X Windows Driver:1:xwinttf:59:xwinttf" |
static int | currentPage = -1 |
static int | XScreen |
static Display * | XDisplay = NULL |
static Window | rootWindow |
static Window | XWindow [MAXPAGES] |
static int | windowXSize = XWINTTF_DEFAULT_X |
static int | windowYSize = XWINTTF_DEFAULT_Y |
static cairo_surface_t * | cairoSurface [MAXPAGES] |
static cairo_t * | cairoContext [MAXPAGES] |
const char * | defaultFamilyLookup [NPANGOLOOKUP] |
const char * | envFamilyLookup [NPANGOLOOKUP] |
char | familyLookup [NPANGOLOOKUP][1024] |
const char * | weightLookup [2] |
const char * | styleLookup [3] |
#define DPI 72 |
#define MAX_MARKUP_LEN MAX_STRING_LEN * 10 |
#define MAX_STRING_LEN 500 |
#define MAXPAGES 50 |
#define NPANGOLOOKUP 5 |
#define XWINTTF_DEFAULT_X 720 |
#define XWINTTF_DEFAULT_Y 540 |
void close_span_tag | ( | char * | pangoMarkupString, | |
int | upDown | |||
) | [static] |
void get_cursor | ( | PLStream * | pls, | |
PLGraphicsIn * | gin | |||
) | [static] |
void open_span_tag | ( | char * | pangoMarkupString, | |
PLUNICODE | fci, | |||
float | fontSize, | |||
int | upDown | |||
) | [static] |
void plD_bop_xwinttf | ( | PLStream * | pls | ) |
void plD_dispatch_init_xwinttf | ( | PLDispatchTable * | pdt | ) |
void plD_eop_xwinttf | ( | PLStream * | pls | ) |
void plD_init_xwinttf | ( | PLStream * | pls | ) |
void plD_line_xwinttf | ( | PLStream * | pls, | |
short | x1a, | |||
short | y1a, | |||
short | x2a, | |||
short | y2a | |||
) |
void plD_tidy_xwinttf | ( | PLStream * | pls | ) |
void set_current_context | ( | PLStream * | pls | ) | [static] |
char * ucs4_to_pango_markup_format | ( | PLUNICODE * | ucs4, | |
int | ucs4Len, | |||
float | fontSize | |||
) | [static] |
cairo_t* cairoContext[MAXPAGES] [static] |
cairo_surface_t* cairoSurface[MAXPAGES] [static] |
int currentPage = -1 [static] |
const char* defaultFamilyLookup[NPANGOLOOKUP] |
Initial value:
{ "Sans", "Serif", "Monospace", "Sans", "Sans" }
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] |
const char* plD_DEVICE_INFO_xwinttf = "xwinttf:TrueType X Windows Driver:1:xwinttf:59:xwinttf" |
Window rootWindow [static] |
const char* styleLookup[3] |
Initial value:
{ "normal", "italic", "oblique" }
const char* weightLookup[2] |
Initial value:
{ "normal", "bold" }
int windowXSize = XWINTTF_DEFAULT_X [static] |
int windowYSize = XWINTTF_DEFAULT_Y [static] |
Display* XDisplay = NULL [static] |
int XScreen [static] |
Window XWindow[MAXPAGES] [static] |