111     for ( i = 0; i < n; i++ )
   113         c_plptex( x[i], y[i], 1., 0., 0.5, 
string );
   133     if ( plsc->level < 3 )
   135         plabort( 
"plsym: Please set up window first" );
   140         plabort( 
"plsym: Invalid code" );
   144     for ( i = 0; i < n; i++ )
   174     PLINT i, sym, ifont = plsc->cfont;
   177     if ( plsc->level < 3 )
   179         plabort( 
"plpoin: Please set up window first" );
   182     if ( code < -1 || code > 127 )
   184         plabort( 
"plpoin: Invalid code" );
   190         for ( i = 0; i < n; i++ )
   204         for ( i = 0; i < n; i++ )
   237     PLINT i, sym, ifont = plsc->cfont;
   239     PLFLT xmin, xmax, ymin, ymax, zmin, zmax, zscale;
   241     if ( plsc->level < 3 )
   243         plabort( 
"plpoin3: Please set up window first" );
   246     if ( code < -1 || code > 127 )
   248         plabort( 
"plpoin3: Invalid code" );
   252     plP_gdom( &xmin, &xmax, &ymin, &ymax );
   257         for ( i = 0; i < n; i++ )
   259             if ( x[i] >= xmin && x[i] <= xmax &&
   260                  y[i] >= ymin && y[i] <= ymax &&
   261                  z[i] >= zmin && z[i] <= zmax )
   276         for ( i = 0; i < n; i++ )
   278             if ( x[i] >= xmin && x[i] <= xmax &&
   279                  y[i] >= ymin && y[i] <= ymax &&
   280                  z[i] >= zmin && z[i] <= zmax )
   315     PLFLT xmin, xmax, ymin, ymax, zmin, zmax, zscale;
   317     if ( plsc->level < 3 )
   319         plabort( 
"plstring3: Please set up window first" );
   323     plP_gdom( &xmin, &xmax, &ymin, &ymax );
   326     for ( i = 0; i < n; i++ )
   328         if ( x[i] >= xmin && x[i] <= xmax &&
   329              y[i] >= ymin && y[i] <= ymax &&
   330              z[i] >= zmin && z[i] <= zmax )
   334             c_plptex( u, v, 1., 0., 0.5, 
string );
   368     if ( ( plsc->dev_text ) && ( plsc->dev_unicode ) && ( !plsc->dev_hrshsym ) )
   377         pldebug( 
"plhrsh", 
"ch, idx, unicode_char = %d, %d, %#x\n", ch, idx, unicode_char );
   385         if ( ( unicode_char == 0 ) || ( idx == -1 ) )
   387 #ifndef PL_TEST_FOR_MISSING_GLYPHS   422             plhrsh_unicode_buffer[0] = unicode_char;
   428                 plhrsh_unicode_buffer[1] = unicode_char;
   436             plsc->original_chrht  = plsc->chrht;
   437             plsc->original_chrdef = plsc->chrdef;
   438             plsc->chrht           = plsc->symht;
   439             plsc->chrdef          = plsc->symdef;
   441             if ( plsc->alt_unicode )
   446                 args.
n_char = unicode_char;
   458             plsc->chrht  = plsc->original_chrht;
   459             plsc->chrdef = plsc->original_chrdef;
   477     PLINT       cx, cy, k, penup, style;
   478     signed char *vxygrid = 0;
   479     PLFLT       scale, xscale, yscale;
   483     scale = 0.05 * plsc->symht;
   485     if ( !
plcvec( ch, &vxygrid ) )
   498     xscale = scale * plsc->xpmm;
   499     yscale = scale * plsc->ypmm;
   506         if ( cx == 64 && cy == 64 )
   517         else if ( cx == 64 && cy == 0 )
   528                 llx[l]   = 
ROUND( x + xscale * cx );
   529                 lly[l++] = 
ROUND( y + yscale * cy );
   535                 llx[l]   = 
ROUND( x + xscale * cx );
   536                 lly[l++] = 
ROUND( y + yscale * cy );
   551     if ( plsc->level < 2 )
   553         plabort( 
"pllab: Please set up viewport first" );
   597     PLINT clpxmi, clpxma, clpymi, clpyma;
   598     PLINT vert, refx, refy, x, y;
   599     PLFLT xdv, ydv, xmm, ymm, refxmm, refymm, shift, 
xform[4];
   603     if ( plsc->level < 2 )
   605         plabort( 
"plmtex: Please set up viewport first" );
   611     plP_gclp( &clpxmi, &clpxma, &clpymi, &clpyma ); 
   612     plP_sclp( plsc->sppxmi, plsc->sppxma, plsc->sppymi, plsc->sppyma );
   617         xdv   = plsc->vpdxmi + ( plsc->vpdxma - plsc->vpdxmi ) * pos;
   625         xdv   = plsc->vpdxmi + ( plsc->vpdxma - plsc->vpdxmi ) * pos;
   633         xdv   = plsc->vpdxmi + ( plsc->vpdxma - plsc->vpdxmi ) * pos;
   641         xdv   = plsc->vpdxmi + ( plsc->vpdxma - plsc->vpdxmi ) * pos;
   650         ydv   = plsc->vpdymi + ( plsc->vpdyma - plsc->vpdymi ) * pos;
   658         ydv   = plsc->vpdymi + ( plsc->vpdyma - plsc->vpdymi ) * pos;
   666         ydv   = plsc->vpdymi + ( plsc->vpdyma - plsc->vpdymi ) * pos;
   674         ydv   = plsc->vpdymi + ( plsc->vpdyma - plsc->vpdymi ) * pos;
   680         plP_sclp( clpxmi, clpxma, clpymi, clpyma ); 
   703     plgchr( &chrdef, &chrht );
   704     shift = ( just == 0.0 ) ? 0.0 : 
plstrl( text ) * just;
   708     refxmm = xmm - shift * xform[0];
   709     refymm = ymm - shift * xform[2];
   718     plP_text( 0, just, xform, x, y, refx, refy, text );
   719     plP_sclp( clpxmi, clpxma, clpymi, clpyma ); 
   736     PLINT x, y, refx, refy;
   737     PLFLT xdv, ydv, xmm, ymm, refxmm, refymm, shift, cc, ss;
   741     PLFLT wxt, wyt, dxt, dyt;
   743     if ( plsc->level < 3 )
   745         plabort( 
"plptex: Please set up window first" );
   751     TRANSFORM( wx + dx, wy + dy, &dxt, &dyt );
   754     if ( dxt == 0.0 && dyt == 0.0 )
   760     cc   = plsc->wmxscl * dxt;
   761     ss   = plsc->wmyscl * dyt;
   762     diag = sqrt( cc * cc + ss * ss );
   779     plgchr( &chrdef, &chrht );
   780     shift = ( just == 0.0 ) ? 0.0 : 
plstrl( text ) * just;
   784     refxmm = xmm - shift * xform[0];
   785     refymm = ymm - shift * xform[2];
   792     plP_text( 0, just, xform, x, y, refx, refy, text );
   813     signed char *vxygrid = 0;
   815     PLINT       ch, i, length, level = 0, style, oline = 0, uline = 0;
   816     PLFLT       width = 0., xorg = 0., yorg = 0., def, ht, dscale, scale;
   817     PLFLT       old_sscale, sscale, old_soffset, soffset;
   828     pldeco( &symbol, &length, 
string );
   830     for ( i = 0; i < length; i++ )
   836                 &old_sscale, &sscale, &old_soffset, &soffset );
   837             yorg  = 16.0 * dscale * soffset;
   838             scale = dscale * sscale;
   843                 &old_sscale, &sscale, &old_soffset, &soffset );
   844             yorg  = -16.0 * dscale * soffset;
   845             scale = dscale * sscale;
   848             xorg -= width * scale;
   855             if ( 
plcvec( ch, &vxygrid ) )
   856                 plchar( vxygrid, xform, base, oline, uline, refx, refy, scale,
   857                     plsc->xpmm, plsc->ypmm, &xorg, &yorg, &width );
   874     PLINT xbase, ybase, ydisp, lx, ly, cx, cy;
   880     *p_width = vxygrid[3] - xbase;
   898         if ( cx == 64 && cy == 64 )
   907         if ( cx == 64 && cy == 0 )
   918             x  = *p_xorg + ( cx - xbase ) * scale;
   919             y  = *p_yorg + ( cy - ybase ) * scale;
   920             lx = refx + 
ROUND( xpmm * ( xform[0] * x + xform[1] * y ) );
   921             ly = refy + 
ROUND( ypmm * ( xform[2] * x + xform[3] * y ) );
   945         y  = *p_yorg + ( 30 + ydisp ) * scale;
   946         lx = refx + 
ROUND( xpmm * ( xform[0] * x + xform[1] * y ) );
   947         ly = refy + 
ROUND( ypmm * ( xform[2] * x + xform[3] * y ) );
   949         x  = *p_xorg + *p_width * scale;
   950         lx = refx + 
ROUND( xpmm * ( xform[0] * x + xform[1] * y ) );
   951         ly = refy + 
ROUND( ypmm * ( xform[2] * x + xform[3] * y ) );
   957         y  = *p_yorg + ( -5 + ydisp ) * scale;
   958         lx = refx + 
ROUND( xpmm * ( xform[0] * x + xform[1] * y ) );
   959         ly = refy + 
ROUND( ypmm * ( xform[2] * x + xform[3] * y ) );
   961         x  = *p_xorg + *p_width * scale;
   962         lx = refx + 
ROUND( xpmm * ( xform[0] * x + xform[1] * y ) );
   963         ly = refy + 
ROUND( ypmm * ( xform[2] * x + xform[3] * y ) );
   966     *p_xorg = *p_xorg + *p_width * scale;
   979     signed char *vxygrid = 0;
   980     PLINT       ch, i, length, level = 0;
   981     PLFLT       width = 0., xorg = 0., dscale, scale, def, ht;
   994     if ( plsc->has_string_length )
   997         plsc->plbuf_write       = 
FALSE;
   998         plsc->get_string_length = 1;
   999         c_plmtex( 
"t", 0.0, 0.0, 0.0, 
string );
  1000         plsc->get_string_length = 0;
  1002         return (
PLFLT) plsc->string_length;
  1009     pldeco( &symbol, &length, 
string );
  1011     for ( i = 0; i < length; i++ )
  1017             scale = dscale * pow( 0.75, (
double) 
ABS( level ) );
  1019         else if ( ch == -2 )
  1022             scale = dscale * pow( 0.75, (
double) 
ABS( level ) );
  1024         else if ( ch == -3 )
  1025             xorg -= width * scale;
  1026         else if ( ch == -4 || ch == -5 )
  1030             if ( 
plcvec( ch, &vxygrid ) )
  1032                 width = vxygrid[3] - vxygrid[2];
  1033                 xorg += width * scale;
  1037     return (
PLFLT) xorg;
  1067     } 
while ( ( x != 64 || y != 64 ) && k <= ( 
STLEN - 2 ) );
  1069     if ( k == ( 
STLEN - 1 ) )
  1108     PLINT     ch, ifont = plsc->cfont, ig, j = 0, lentxt = (
PLINT) strlen( text );
  1122     while ( j < lentxt )
  1128         if ( ch < 0 || ch > 175 )
  1133         if ( ch == esc && ( lentxt - j ) >= 1 )
  1139             else if ( test == 
'u' || test == 
'U' )
  1140                 sym[( *length )++] = -1;
  1142             else if ( test == 
'd' || test == 
'D' )
  1143                 sym[( *length )++] = -2;
  1145             else if ( test == 
'b' || test == 
'B' )
  1146                 sym[( *length )++] = -3;
  1148             else if ( test == 
'+' )
  1149                 sym[( *length )++] = -4;
  1151             else if ( test == 
'-' )
  1152                 sym[( *length )++] = -5;
  1154             else if ( test == 
'(' )
  1157                 while ( 
'0' <= text[j] && text[j] <= 
'9' )
  1159                     sym[*length] = (short) ( (
int) sym[*length] * 10 + text[j] - 
'0' );
  1163                 if ( text[j] == 
')' )
  1166             else if ( test == 
'f' || test == 
'F' )
  1170                     isupper( test ) ? tolower( test ) : test );
  1174             else if ( test == 
'g' || test == 
'G' )
  1186                 sym[( *length )++] =
  1220     if ( ( temp = strchr( str, chr ) ) )
  1221         return (
PLINT) ( temp - str );
  1235     PLINT base, str1ind, str2ind;
  1237     for ( base = 0; *( str1 + base ) != 
'\0'; base++ )
  1239         for ( str1ind = base, str2ind = 0; *( str2 + str2ind ) != 
'\0' &&
  1240               *( str2 + str2ind ) == *( str1 + str1ind ); str1ind++, str2ind++ )
  1243         if ( *( str2 + str2ind ) == 
'\0' )
  1244             return (
PLINT) base;
  1258     if ( strchr( str, chr ) )
  1260     else if ( strchr( str, toupper( chr ) ) )
  1313         *old_scale  = *scale;
  1314         *old_offset = *offset;
  1316     if ( ( *level >= 0 && ifupper ) || ( *level <= 0 && !ifupper ) )
  1319         *scale  = 0.75 * *old_scale;
  1320         *offset = *old_offset + *old_scale;
  1325         *scale  = *old_scale / 0.75;
  1326         *offset = *old_offset - *scale;
  1344     if ( plsc->level < 1 )
  1346         plabort( 
"plfont: Please call plinit first" );
  1349     if ( ifont < 1 || ifont > 4 )
  1351         plabort( 
"plfont: Invalid font" );
  1355     plsc->cfont = ifont;
  1396     static PLINT charset;
  1413         plexit( 
"Unable to either (1) open/find or (2) allocate memory for the font file" );
  1421     fntlkup     = (
short int *) malloc( (
size_t) bffrleng * 
sizeof ( 
short int ) );
  1423         plexit( 
"plfntld: Out of memory while allocating font buffer." );
  1430     fntindx = (
short int *) malloc( (
size_t) indxleng * 
sizeof ( 
short int ) );
  1432         plexit( 
"plfntld: Out of memory while allocating font buffer." );
  1440     fntbffr = (
signed char *) malloc( 2 * (
size_t) bffrleng * 
sizeof ( 
signed char ) );
  1442         plexit( 
"plfntld: Out of memory while allocating font buffer." );
  1444 #if PLPLOT_USE_TCL_CHANNELS  1445     pdf_rdx( 
fntbffr, 
sizeof ( 
signed char ) * (
size_t) ( 2 * bffrleng ), pdfs );
  1448         (
size_t) ( 2 * bffrleng ), pdfs->
file );
  1492 #ifdef SIMPLE_BUT_SAFE_HERSHEY_LOOKUP  1507     while ( jhi - jlo > 1 )
  1513         jmid = ( jlo + jhi ) / 2;
  1551     int jlo = -1, jmid, jhi = nlookup;
  1552     while ( jhi - jlo > 1 )
  1558         jmid = ( jlo + jhi ) / 2;
  1559         if ( fci > lookup[jmid].fci )
  1561         else if ( fci < lookup[jmid].fci )
  1613     PLFLT xmin, xmax, ymin, ymax, zmin, zmax, zscale;
  1614     PLFLT chrdef, chrht;
  1617     PLFLT xpc, ypc, xrefpc, yrefpc;
  1618     PLFLT epx1 = 0.0, epy1 = 0.0, epx2 = 0.0, epy2 = 0.0, epx3 = 0.0, epy3 = 0.0;
  1620     PLFLT shift, theta, temp;
  1623     if ( plsc->level < 3 )
  1625         plabort( 
"plmtex3: Please set up window first" );
  1630     plP_gdom( &xmin, &xmax, &ymin, &ymax );
  1632     plgchr( &chrdef, &chrht );
  1695         if ( ( epx2 - epx1 ) != 0.0 )
  1697             theta = atan( ( epy2 - epy1 ) / ( epx2 - epx1 ) );
  1713         dispy = disp * chrht;
  1717         xpc = pos * ( epx2 - epx1 ) + epx1;
  1718         ypc = pos * ( epy2 - epy1 ) + epy1;
  1731         shift = 
plstrl( text ) * just;
  1736             yrefpc = ypc - shift;
  1740             xrefpc = xpc - cos( theta ) * shift;
  1741             yrefpc = ypc - sin( theta ) * shift;
  1756             xform[1] = -cos( theta );
  1758             xform[3] = -sin( theta );
  1765             xform[0] = cos( theta );
  1767             xform[2] = sin( theta );
  1865             if ( ( epx3 - epx1 ) != 0.0 )
  1867                 theta = atan( ( epy3 - epy1 ) / ( epx3 - epx1 ) );
  1883             dispx = -cos( theta ) * disp * chrht;
  1884             dispy = -sin( theta ) * disp * chrht;
  1888             if ( ( epx1 - epx3 ) != 0.0 )
  1890                 theta = -atan( ( epy3 - epy1 ) / ( epx1 - epx3 ) );
  1904             dispx = cos( theta ) * disp * chrht;
  1905             dispy = sin( theta ) * disp * chrht;
  1911         ypc = pos * ( epy2 - epy1 ) + epy1;
  1918         shift = 
plstrl( text ) * just;
  1922             xrefpc = xpc - cos( theta ) * shift;
  1923             yrefpc = ypc - sin( theta ) * shift;
  1928             yrefpc = ypc - shift;
  1940             xform[0] = cos( theta );
  1942             xform[2] = sin( theta );
  1951             xform[1] = -cos( theta );
  1953             xform[3] = -sin( theta );
  1985     PLFLT xpc, ypc, xrefpc, yrefpc, xdpc, ydpc, xspc, yspc, ld, ls, cp, shift;
  1986     PLFLT x_o, y_o, z_o, x_dx, y_dy, z_dz;
  1987     PLFLT theta, phi, stride, 
xform[6], affineL[6], cosphi;
  1990     if ( plsc->level < 3 )
  1992         plabort( 
"plptex3: Please set up window first" );
  2003     theta = atan2( ydpc - ypc, xdpc - xpc );
  2015     if ( ( sx == 0.0 ) && ( sy == 0.0 ) && ( sz == 0.0 ) )
  2023         ld   = sqrt( ( xpc - xdpc ) * ( xpc - xdpc ) + ( ypc - ydpc ) * ( ypc - ydpc ) );
  2024         ls   = sqrt( ( xpc - xspc ) * ( xpc - xspc ) + ( ypc - yspc ) * ( ypc - yspc ) );
  2025         phi  = acos( ( ( xdpc - xpc ) * ( xspc - xpc ) + ( ydpc - ypc ) * ( yspc - ypc ) ) / ( ld * ls ) );
  2026         cp   = ( xdpc - xpc ) * ( yspc - ypc ) - ( ydpc - ypc ) * ( xspc - xpc );
  2031         phi = 0.5 * 
PI - phi;
  2041     x_dx = x_o - 
plP_w3wcx( wx + dx, wy + dy, wz + dz );
  2042     y_dy = y_o - 
plP_w3wcy( wx + dx, wy + dy, wz + dz );
  2043     z_dz = z_o - 
plP_w3wcz( wx + dx, wy + dy, wz + dz );
  2045     stride = sqrt( x_dx * x_dx + y_dy * y_dy );
  2046     stride = stride / sqrt( x_dx * x_dx + y_dy * y_dy + z_dz * z_dz );
  2052     shift  = 
plstrl( text ) * just;
  2053     xrefpc = xpc - cos( theta ) * shift * stride;
  2054     yrefpc = ypc - sin( theta ) * shift * stride;
  2076     cosphi = cos( phi );
  2077     if ( fabs( cosphi ) > 1.e-300 )
  2104             plwarn( 
"plsfont: Value for family is out of range" );
  2113             plwarn( 
"plsfont: Value for style is out of range" );
  2122             plwarn( 
"plsfont: Value for weight is out of range" );
  2148         *p_family = (
PLINT) val;
  2154         *p_style = (
PLINT) val;
  2160         *p_weight = (
PLINT) val;
 void plP_script_scale(PLBOOL ifupper, PLINT *level, PLFLT *old_scale, PLFLT *scale, PLFLT *old_offset, PLFLT *offset)
int pdf_rdx(U_CHAR *x, long nitems, PDFstrm *pdfs)
void plexit(PLCHAR_VECTOR errormsg)
void c_plstring3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLCHAR_VECTOR string)
void plP_esc(PLINT op, void *ptr)
void c_plmtex(PLCHAR_VECTOR side, PLFLT disp, PLFLT pos, PLFLT just, PLCHAR_VECTOR text)
void plP_fci2hex(PLUNICODE fci, unsigned char *phexdigit, unsigned char hexpower)
PLFLT plP_w3wcz(PLFLT x, PLFLT y, PLFLT z)
static void plhrsh2(PLINT ch, PLINT x, PLINT y)
static void pldeco(short int **sym, PLINT *length, PLCHAR_VECTOR text)
PLINT plP_stindex(PLCHAR_VECTOR str1, PLCHAR_VECTOR str2)
const char plP_greek_mnemonic[]
static short int * fntindx
void plP_grange(PLFLT *p_zscl, PLFLT *p_zmin, PLFLT *p_zmax)
const char * PLCHAR_VECTOR
void plP_text(PLINT base, PLFLT just, PLFLT *xform, PLINT x, PLINT y, PLINT refx, PLINT refy, PLCHAR_VECTOR string)
static void plchar(signed char *xygrid, PLFLT *xform, PLINT base, PLINT oline, PLINT uline, PLINT refx, PLINT refy, PLFLT scale, PLFLT xpmm, PLFLT ypmm, PLFLT *p_xorg, PLFLT *p_yorg, PLFLT *p_width)
PLBOOL plP_stsearch(PLCHAR_VECTOR str, int chr)
void c_plpoin3(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLFLT_VECTOR z, PLINT code)
int pdf_rd_2bytes(PDFstrm *pdfs, U_SHORT *ps)
static short int numberfonts
void plabort(PLCHAR_VECTOR errormsg)
int hershey2unicode(int in)
static short symbol_buffer[PLMAXSTR]
void c_plstring(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLCHAR_VECTOR string)
void c_plpoin(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT code)
PLFLT plstrl(PLCHAR_VECTOR string)
void plP_affine_yskew(PLFLT *affine_vector, PLFLT angle)
void c_plmtex3(PLCHAR_VECTOR side, PLFLT disp, PLFLT pos, PLFLT just, PLCHAR_VECTOR text)
void plstr(PLINT base, PLFLT *xform, PLINT refx, PLINT refy, PLCHAR_VECTOR string)
static PLINT plcvec(PLINT ch, signed char **xygr)
static const char font_types[]
void plP_gclp(PLINT *p_ixmin, PLINT *p_ixmax, PLINT *p_iymin, PLINT *p_iymax)
const unsigned char * pfont
void c_plsfont(PLINT family, PLINT style, PLINT weight)
static signed char * fntbffr
void c_plgfont(PLINT *p_family, PLINT *p_style, PLINT *p_weight)
void plio_fread(void *buf, size_t size, size_t nmemb, FILE *stream)
enum EscText::@5 text_type
static short int numberchars
void c_plsym(PLINT n, PLFLT_VECTOR x, PLFLT_VECTOR y, PLINT code)
void c_pllab(PLCHAR_VECTOR xlabel, PLCHAR_VECTOR ylabel, PLCHAR_VECTOR tlabel)
#define TRANSFORM(x, y, xnew, ynew)
void xform(PLFLT x, PLFLT y, PLFLT *tx, PLFLT *ty, PLPointer pltr_data)
Hershey_to_Unicode_table hershey_to_unicode_lookup_table[]
void plP_affine_multiply(PLFLT *affine_vectorA, PLFLT_VECTOR affine_vectorB, PLFLT_VECTOR affine_vectorC)
void plP_affine_rotate(PLFLT *affine_vector, PLFLT angle)
PLFLT plP_w3wcy(PLFLT x, PLFLT y, PLFLT z)
void plhrsh(PLINT ch, PLINT x, PLINT y)
unsigned short unicode_array_len
int plhershey2unicode(int in)
void plP_draphy(PLINT x, PLINT y)
void c_plfont(PLINT ifont)
static short int * fntlkup
PLFLT plP_w3wcx(PLFLT x, PLFLT y, PLFLT PL_UNUSED(z))
int pdf_close(PDFstrm *pdfs)
void plP_draphy_poly(PLINT *x, PLINT *y, PLINT n)
void plP_hex2fci(unsigned char hexdigit, unsigned char hexpower, PLUNICODE *pfci)
void plP_movphy(PLINT x, PLINT y)
PLCHAR_VECTOR plP_FCI2FontName(PLUNICODE fci, const FCI_to_FontName_Table lookup[], const int nlookup)
void c_plptex(PLFLT wx, PLFLT wy, PLFLT dx, PLFLT dy, PLFLT just, PLCHAR_VECTOR text)
void plwarn(PLCHAR_VECTOR errormsg)
void c_plptex3(PLFLT wx, PLFLT wy, PLFLT wz, PLFLT dx, PLFLT dy, PLFLT dz, PLFLT sx, PLFLT sy, PLFLT sz, PLFLT just, PLCHAR_VECTOR text)
int pdf_rd_2nbytes(PDFstrm *pdfs, U_SHORT *s, PLINT n)
void plP_sclp(PLINT ixmin, PLINT ixmax, PLINT iymin, PLINT iymax)
static short int indxleng
void plbuf_write(PLStream *pls, void *data, size_t bytes)
int number_of_entries_in_hershey_to_unicode_table
static signed char xygrid[STLEN]
const PLFLT * PLFLT_VECTOR
PDFstrm * plLibOpenPdfstrm(PLCHAR_VECTOR fn)
PLUNICODE * unicode_array
void plP_affine_scale(PLFLT *affine_vector, PLFLT xscale, PLFLT yscale)
void plP_gdom(PLFLT *p_xmin, PLFLT *p_xmax, PLFLT *p_ymin, PLFLT *p_ymax)
PLINT plP_strpos(PLCHAR_VECTOR str, int chr)