QSAS_2_3/QSAS_dist/src/Utilities/qplplot/cairo.c File Reference

#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

PLCairostream_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 Documentation

#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


Function Documentation

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_esc_cairo ( PLStream pls,
PLINT  op,
void *  ptr 
)

void plD_line_cairo ( PLStream pls,
short  x1a,
short  y1a,
short  x2a,
short  y2a 
)

void plD_polyline_cairo ( PLStream pls,
short *  xa,
short *  ya,
PLINT  npts 
)

void plD_state_cairo ( PLStream pls,
PLINT  op 
)

void plD_tidy_cairo ( PLStream pls  ) 

void poly_line ( PLStream pls,
short *  xa,
short *  ya,
PLINT  npts 
) [static]

void proc_str ( PLStream pls,
EscText args 
) [static]

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]

PLCairo * stream_and_font_setup ( PLStream pls,
int  interactive 
)

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 
)


Variable Documentation

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


Generated on Tue Dec 9 16:55:34 2008 for QSAS by  doxygen 1.5.7