version 1.1.1.2, 2000/01/22 14:16:28 |
version 1.1.1.3, 2003/09/15 07:09:38 |
Line 93 static char *PSLATEX_psfile = NULL; |
|
Line 93 static char *PSLATEX_psfile = NULL; |
|
static TBOOLEAN PSLATEX_useAuxFile = FALSE; /* do we write two files? */ |
static TBOOLEAN PSLATEX_useAuxFile = FALSE; /* do we write two files? */ |
static FILE *PSLATEX_auxFile = NULL; |
static FILE *PSLATEX_auxFile = NULL; |
static TBOOLEAN PSLATEX_output = TRUE; /* do we write LaTeX? */ |
static TBOOLEAN PSLATEX_output = TRUE; /* do we write LaTeX? */ |
|
static int PSLATEX_fontsize = 0; |
|
|
struct text_command { |
struct text_command { |
int x, y, angle, justify; |
int x, y, angle, justify; |
Line 156 TERM_PUBLIC void PSLATEX_options() |
|
Line 157 TERM_PUBLIC void PSLATEX_options() |
|
if (!END_OF_COMMAND) { |
if (!END_OF_COMMAND) { |
/* We have font size specified */ |
/* We have font size specified */ |
struct value a; |
struct value a; |
int ps_fontsize = (int) real(const_express(&a)); |
/* Copied from latex.trm */ |
term->v_char = (unsigned int) (ps_fontsize * PS_SC); |
PSLATEX_fontsize = (int) real(const_express(&a)); |
term->h_char = (unsigned int) (ps_fontsize * PS_SC / 2); |
/* |
|
term->v_char = (unsigned int) (PSLATEX_fontsize * DOTS_PER_INCH / 72); |
|
term->h_char = (unsigned int) (PSLATEX_fontsize * DOTS_PER_INCH / 144); |
|
*/ |
|
term->v_char = (unsigned int) (PSLATEX_fontsize * DOTS_PER_INCH / 60); |
|
term->h_char = (unsigned int) (PSLATEX_fontsize * DOTS_PER_INCH / 120); |
} |
} |
/* be sure to generate an options string that PSLATEX_init understands */ |
/* be sure to generate an options string that PSLATEX_init understands */ |
|
|
Line 167 TERM_PUBLIC void PSLATEX_options() |
|
Line 173 TERM_PUBLIC void PSLATEX_options() |
|
ps_solid ? "solid" : "dashed", |
ps_solid ? "solid" : "dashed", |
PSLATEX_rotate ? "rotate" : "norotate", |
PSLATEX_rotate ? "rotate" : "norotate", |
PSLATEX_useAuxFile ? " auxfile" : ""); |
PSLATEX_useAuxFile ? " auxfile" : ""); |
|
if (PSLATEX_fontsize) { |
|
char fs[8] = ""; |
|
sprintf(fs," %d", PSLATEX_fontsize); |
|
strcat(term_options, fs); |
|
} |
} |
} |
|
|
TERM_PUBLIC void PSLATEX_init() |
TERM_PUBLIC void PSLATEX_init() |
Line 186 TERM_PUBLIC void PSLATEX_init() |
|
Line 197 TERM_PUBLIC void PSLATEX_init() |
|
*/ |
*/ |
|
|
/* if there's no extension, append ".ps" */ |
/* if there's no extension, append ".ps" */ |
if ((dotIndex = strrchr(outstr, '.')) == NULL) |
if (outstr && (dotIndex = strrchr(outstr, '.')) == NULL) |
dotIndex = strchr(outstr, NUL); |
dotIndex = strchr(outstr, NUL); |
|
|
/* try to open the auxiliary file for the postscript parts. */ |
/* try to open the auxiliary file for the postscript parts. */ |
Line 260 Turning off auxfile option\n", outstr); |
|
Line 271 Turning off auxfile option\n", outstr); |
|
if (PSLATEX_auxFile) { |
if (PSLATEX_auxFile) { |
FILE *tmp = gpoutfile; |
FILE *tmp = gpoutfile; |
gpoutfile = PSLATEX_auxFile; |
gpoutfile = PSLATEX_auxFile; |
PS_common_init(1, 1, 0, 0, 0, xmin_t, ymin_t, xmax_t, ymax_t, NULL); |
PS_common_init(0, 1, 0, 0, 0, |
|
xmin_t, ymin_t, xmax_t, ymax_t, NULL); |
gpoutfile = tmp; |
gpoutfile = tmp; |
} else { |
} else { |
fputs("{\\GNUPLOTspecial{!\n", gpoutfile); |
fputs("{\\GNUPLOTspecial{!\n", gpoutfile); |
PS_common_init(1, 1, 0, 0, 0, xmin_t, ymin_t, xmax_t, ymax_t, NULL); |
PS_common_init(0, 1, 0, 0, 0, |
|
xmin_t, ymin_t, xmax_t, ymax_t, NULL); |
fputs("}}%\n", gpoutfile); |
fputs("}}%\n", gpoutfile); |
} |
} |
} |
} |
Line 289 TERM_PUBLIC void PSLATEX_graphics() |
|
Line 302 TERM_PUBLIC void PSLATEX_graphics() |
|
FILE *tmp; |
FILE *tmp; |
/* these are taken from the post.trm file computation |
/* these are taken from the post.trm file computation |
* of the bounding box, but without the X_OFF and Y_OFF */ |
* of the bounding box, but without the X_OFF and Y_OFF */ |
int urx = (int) (xsize * (PS_XMAX) / PS_SC + 0.5); |
int urx = (int) (xsize * (PSLATEX_XMAX) / PS_SC + 0.5); |
int ury = (int) (ysize * (PS_YMAX) / PS_SC + 0.5); |
int ury = (int) (ysize * (PSLATEX_YMAX) / PS_SC + 0.5); |
/* moved this code here from beginning of the function |
/* moved this code here from beginning of the function |
* PSLATEX_psfile is only != NULL with the `auxfile' option */ |
* PSLATEX_psfile is only != NULL with the `auxfile' option */ |
char *psfile_basename = strrchr(PSLATEX_psfile, DIRSEP1); |
char *psfile_basename = strrchr(PSLATEX_psfile, DIRSEP1); |
Line 389 TERM_PUBLIC void PSLATEX_text() |
|
Line 402 TERM_PUBLIC void PSLATEX_text() |
|
fputs("}}%\n", gpoutfile); |
fputs("}}%\n", gpoutfile); |
} |
} |
|
|
|
if (PSLATEX_fontsize) { |
|
if (PSLATEX_output) |
|
fprintf(gpoutfile, "\\fontsize{%d}{\\baselineskip}\\selectfont\n", |
|
PSLATEX_fontsize); |
|
/* Should have an else clause here to handle pstex equivalent */ |
|
} |
|
|
for (tc = PSLATEX_labels; tc != (struct text_command *) NULL; tc = tc->next) { |
for (tc = PSLATEX_labels; tc != (struct text_command *) NULL; tc = tc->next) { |
fprintf(gpoutfile, "\\put(%d,%d){", tc->x, tc->y); |
fprintf(gpoutfile, "\\put(%d,%d){", tc->x, tc->y); |
if (PSLATEX_output && |
if (PSLATEX_output && |
Line 616 START_HELP(pslatex) |
|
Line 636 START_HELP(pslatex) |
|
"", |
"", |
" <color> is either `color` or `monochrome`. <rotate> is either `rotate` or", |
" <color> is either `color` or `monochrome`. <rotate> is either `rotate` or", |
" `norotate` and determines if the y-axis label is rotated. <font_size> is", |
" `norotate` and determines if the y-axis label is rotated. <font_size> is", |
" used to scale the font from its usual size.", |
" the size (in pts) of the desired font.", |
"", |
"", |
" If `auxfile` is specified, it directs the driver to put the PostScript", |
" If `auxfile` is specified, it directs the driver to put the PostScript", |
" commands into an auxiliary file instead of directly into the LaTeX file.", |
" commands into an auxiliary file instead of directly into the LaTeX file.", |
Line 648 START_HELP(pslatex) |
|
Line 668 START_HELP(pslatex) |
|
" Specify own positioning (top here):", |
" Specify own positioning (top here):", |
" set xlabel '[t]{\\LaTeX\\ -- $ \\gamma $}'", |
" set xlabel '[t]{\\LaTeX\\ -- $ \\gamma $}'", |
" The other label -- account for long ticlabels:", |
" The other label -- account for long ticlabels:", |
" set ylabel '[r]{\\LaTeX\\ -- $ \\gamma $\\rule{7mm}{0pt}'", |
" set ylabel '[r]{\\LaTeX\\ -- $ \\gamma $\\rule{7mm}{0pt}}'", |
"", |
"", |
" Linewidths and pointsizes may be changed with `set linestyle`." |
" Linewidths and pointsizes may be changed with `set linestyle`." |
END_HELP(pslatex) |
END_HELP(pslatex) |