[BACK]Return to pslatex.trm CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gnuplot / term

Diff for /OpenXM_contrib/gnuplot/term/Attic/pslatex.trm between version 1.1 and 1.1.1.2

version 1.1, 2000/01/09 17:01:15 version 1.1.1.2, 2000/01/22 14:16:28
Line 91  static int PSLATEX_justify;
Line 91  static int PSLATEX_justify;
 static int PSLATEX_rotate = TRUE;  static int PSLATEX_rotate = TRUE;
 static char *PSLATEX_psfile = NULL;  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;  static FILE *PSLATEX_auxFile = NULL;
 static TBOOLEAN PSLATEX_output = TRUE;  /* do we write LaTeX? */  static TBOOLEAN PSLATEX_output = TRUE;  /* do we write LaTeX? */
   
 struct text_command {  struct text_command {
Line 176  TERM_PUBLIC void PSLATEX_init()
Line 176  TERM_PUBLIC void PSLATEX_init()
     if (strcmp(term->name, "pstex") == 0)      if (strcmp(term->name, "pstex") == 0)
         PSLATEX_output = FALSE;          PSLATEX_output = FALSE;
   
     PSLATEX_auxFile = NULL;     /* until we know otherwise */      /* until we know otherwise */
       PSLATEX_auxFile = NULL;
   
     /* dont tweak PSLATEX_useAuxFile if we decide we cannot comply      /* dont tweak PSLATEX_useAuxFile if we decide we cannot comply
      * since this affects subsequent plots even after a set out       * since this affects subsequent plots even after a set out
      * Instead, we will use PSLATEX_auxFile != NULL to indicate       * Instead, we will use PSLATEX_auxFile != NULL to indicate
      * use of an aux file       * use of an aux file
      */       */
   
       /* if there's no extension, append ".ps" */
       if ((dotIndex = strrchr(outstr, '.')) == NULL)
           dotIndex = strchr(outstr, NUL);
   
     /* try to open the auxiliary file for the postscript parts. */      /* try to open the auxiliary file for the postscript parts. */
     if (outstr && PSLATEX_useAuxFile == TRUE &&      if (outstr && PSLATEX_useAuxFile == TRUE) {
         (dotIndex = strrchr(outstr, '.'))) {  
   
         /* assume file name is ending in ".tex" */          /* length of outstr plus ('.' or '\0') plus "ps" plus '\0' */
         if (PSLATEX_psfile)          PSLATEX_psfile = gp_realloc (PSLATEX_psfile,(dotIndex - outstr) + 4,"pslatex aux filename");
             free(PSLATEX_psfile);  
         PSLATEX_psfile = gp_alloc(dotIndex - outstr + 3, "pslatex aux filename");  
         if (PSLATEX_psfile) {          if (PSLATEX_psfile) {
         /* including . */              /* include period or '\0' */
             safe_strncpy(PSLATEX_psfile, outstr, dotIndex - outstr + 1);              strncpy(PSLATEX_psfile, outstr, (dotIndex - outstr) + 1);
             strcpy(PSLATEX_psfile + (dotIndex - outstr) + 1, "ps");              /* period or '\0' is overwritten with period, and "ps" appended */
             if ((PSLATEX_auxFile = fopen(PSLATEX_psfile, "w")) == (FILE *) NULL) {              strcpy(PSLATEX_psfile + (dotIndex - outstr), ".ps");
               PSLATEX_auxFile = fopen(PSLATEX_psfile, "w");
               if (PSLATEX_auxFile  == (FILE *) NULL) {
                 fprintf(stderr, "Cannot open aux file %s for output\n",                  fprintf(stderr, "Cannot open aux file %s for output\n",
                         PSLATEX_psfile);                          PSLATEX_psfile);
                   /* And what? Error handling????? */
             }              }
         } else {          } else {
             fprintf(stderr, "\              fprintf(stderr, "\
 Cannot make PostScript file name from %s\n\  Cannot make PostScript file name from %s\n\
 Turning off auxfile option\n", outstr);  Turning off auxfile option\n", outstr);
             PSLATEX_auxFile = NULL;              PSLATEX_auxFile = NULL;
               /* NEW! */ PSLATEX_useAuxFile = FALSE;
         }          }
     }      }
     if (PSLATEX_output) {      if (PSLATEX_output) {
Line 272  TERM_PUBLIC void PSLATEX_graphics()
Line 279  TERM_PUBLIC void PSLATEX_graphics()
     struct termentry *t = term;      struct termentry *t = term;
   
     if (PSLATEX_output)      if (PSLATEX_output)
         fprintf(gpoutfile, "\\begin{picture}(%d,%d)(0,0)%%\n", (int) (xsize * t->xmax), (int)          fprintf(gpoutfile, "\\begin{picture}(%d,%d)(0,0)%%\n",
                 (ysize * t->ymax));                  (int) (xsize * t->xmax), (int) (ysize * t->ymax));
     else      else
         fprintf(gpoutfile, "\\GNUPLOTpicture(%d,%d)\n", (int) (xsize * t->xmax), (int) (ysize * t->ymax));          fprintf(gpoutfile, "\\GNUPLOTpicture(%d,%d)\n",
                   (int) (xsize * t->xmax), (int) (ysize * t->ymax));
   
     if (PSLATEX_auxFile) {      if (PSLATEX_auxFile) {
         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 ury = (int) (ysize * (PS_YMAX) / PS_SC + 0.5);
         int urx = (int) (xsize * (PS_XMAX) / PS_SC + 0.5), ury = (int) (ysize * (PS_YMAX) / PS_SC          /* moved this code here from beginning of the function
                                                                         + 0.5);           * PSLATEX_psfile is only != NULL with the `auxfile' option */
           char *psfile_basename = strrchr(PSLATEX_psfile, DIRSEP1);
   
           if (psfile_basename)
               psfile_basename++;
           else {
               if (DIRSEP2 != NUL) {
                   psfile_basename = strrchr(PSLATEX_psfile, DIRSEP2);
                   if (psfile_basename)
                       psfile_basename++;
                   else
                       psfile_basename = PSLATEX_psfile;
               } else
                   psfile_basename = PSLATEX_psfile;
           }
   
         /* generate special which xdvi and dvips can handle */          /* generate special which xdvi and dvips can handle */
         fprintf(gpoutfile,          fprintf(gpoutfile,
                 "\\special{psfile=%s llx=0 lly=0 urx=%d ury=%d rwi=%d}\n",                  "\\special{psfile=%s llx=0 lly=0 urx=%d ury=%d rwi=%d}\n",
                 PSLATEX_psfile, urx, ury, 10 * urx);                  psfile_basename, urx, ury, 10 * urx);
         tmp = gpoutfile;          tmp = gpoutfile;
         gpoutfile = PSLATEX_auxFile;          gpoutfile = PSLATEX_auxFile;
         PS_graphics();          PS_graphics();
Line 601  START_HELP(pslatex)
Line 623  START_HELP(pslatex)
 " This is useful if your pictures are large enough that dvips cannot handle",  " This is useful if your pictures are large enough that dvips cannot handle",
 " them.  The name of the auxiliary PostScript file is derived from the name of",  " them.  The name of the auxiliary PostScript file is derived from the name of",
 " the TeX file given on the `set output` command; it is determined by replacing",  " the TeX file given on the `set output` command; it is determined by replacing",
 " the trailing `.tex` (actually just the final extent in the file name---and",  " the trailing `.tex` (actually just the final extent in the file name) with",
 " the option will be turned off if there is no extent) with `.ps` in the output",  " `.ps` in the output file name, or, if the TeX file has no extension, `.ps`",
 " file name.  Remember to close the file before leaving `gnuplot`.",  " is appended.  Remember to close the file before leaving `gnuplot`.",
 "",  "",
 " All drivers for LaTeX offer a special way of controlling text positioning:",  " All drivers for LaTeX offer a special way of controlling text positioning:",
 " If any text string begins with '{', you also need to include a '}' at the",  " If any text string begins with '{', you also need to include a '}' at the",

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.1.1.2

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>