forked from pool/transfig
Update to fig2dev-3.2.7a
OBS-URL: https://build.opensuse.org/package/show/Publishing/transfig?expand=0&rev=47
This commit is contained in:
parent
2f9781b750
commit
82b79c281c
@ -3,27 +3,35 @@ Description: creating multilayered or singlelayer PDF or EPS figures for
|
||||
including into LaTeX documents.
|
||||
Origin: http://p3f.gmxhome.de/fig2mpdf/fig2mpdf.html
|
||||
|
||||
---
|
||||
fig2dev/dev/genpstex.c | 331 ++++++++++++++++++++++++
|
||||
fig2dev/drivers.h | 4
|
||||
fig2dev/fig2dev.c | 23 +
|
||||
fig2mpdf/copyright.txt | 25 +
|
||||
fig2mpdf/fig2mpdf | 653 +++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
fig2mpdf/fig2mpdf.1 | 208 +++++++++++++++
|
||||
man/fig2dev.1.in | 69 +++++
|
||||
7 files changed, 1311 insertions(+), 2 deletions(-)
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/genpstex.c
|
||||
--- a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/dev/genpstex.c
|
||||
@@ -49,6 +49,7 @@
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/dev/genpstex.c 2018-05-07 10:01:03.485164209 +0000
|
||||
@@ -48,9 +48,12 @@
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
#include <sys/stat.h>
|
||||
+#include <stdlib.h>
|
||||
|
||||
#include "fig2dev.h"
|
||||
#include "object.h" /* does #include <X11/xpm.h> */
|
||||
+#include "texfonts.h"
|
||||
+#include "setfigfont.h"
|
||||
|
||||
extern double rad2deg;
|
||||
|
||||
@@ -76,7 +77,307 @@ extern int genpdf_end(void); /* genpdf
|
||||
extern void genps_grid(float major, float minor);
|
||||
@@ -79,6 +82,308 @@ extern void genps_grid(float major, floa
|
||||
|
||||
static char pstex_file[1000] = "";
|
||||
|
||||
+static int iObjectsRead = 0;
|
||||
+static int iTextRead = 0;
|
||||
+static int iObjectsFileNumber = 0;
|
||||
@ -59,7 +67,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+
|
||||
+/*************************************************************************
|
||||
+ *************************************************************************/
|
||||
+static
|
||||
+static int
|
||||
+translate2(xp, yp)
|
||||
+ int *xp, *yp;
|
||||
+{
|
||||
@ -67,7 +75,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+ *yp = (double)(TOP - *yp -1);
|
||||
+ }
|
||||
+
|
||||
+static
|
||||
+static int
|
||||
+translate1_d(xp, yp)
|
||||
+ double *xp, *yp;
|
||||
+{
|
||||
@ -75,7 +83,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+ *yp = *yp + 1.0;
|
||||
+ }
|
||||
+
|
||||
+static
|
||||
+static int
|
||||
+translate2_d(xp, yp)
|
||||
+ double *xp, *yp;
|
||||
+{
|
||||
@ -85,8 +93,8 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+
|
||||
+/*************************************************************************
|
||||
+ *************************************************************************/
|
||||
+void genpstex_p_option(opt, optarg)
|
||||
+char opt, *optarg;
|
||||
+void
|
||||
+genpstex_p_option(char opt, char *optarg)
|
||||
+{
|
||||
+ if (opt == 'p')
|
||||
+ {
|
||||
@ -125,7 +133,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+ }
|
||||
+ fstat(fileno(ptCreateFile), & tStat);
|
||||
+ fchmod (fileno(ptCreateFile), tStat.st_mode | ((tStat.st_mode & (S_IRUSR | S_IRGRP | S_IROTH)) >> 2));
|
||||
+ fprintf(ptCreateFile, "#!/bin/bash\n\n", szFileName);
|
||||
+ fprintf(ptCreateFile, "#!/bin/bash\n\n");
|
||||
+
|
||||
+ fprintf(ptCreateFile, "while getopts \"r\" Option\n");
|
||||
+ fprintf(ptCreateFile, "do\n");
|
||||
@ -208,7 +216,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+ /* all ok */
|
||||
+ return 0;
|
||||
+}
|
||||
|
||||
+
|
||||
+
|
||||
+/*************************************************************************
|
||||
+ *************************************************************************/
|
||||
@ -226,8 +234,8 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+ fprintf(ptCreateFile, "if [ \"$iOptRemove\" == \"\" ]; then\n");
|
||||
+ if (iPdfOutputs)
|
||||
+ {
|
||||
+ fprintf(ptCreateFile, " %s -L pstex -D +%d:%d %s", prog, depth, iStartDepth, from, szFileName);
|
||||
+ fprintf(ptCreateFile, " | epstopdf -f > %s.pdf\n", szFileName, szFileName);
|
||||
+ fprintf(ptCreateFile, " %s -L pstex -D +%d:%d %s", prog, depth, iStartDepth, from);
|
||||
+ fprintf(ptCreateFile, " | epstopdf -f > %s.pdf\n", szFileName);
|
||||
+ }
|
||||
+ else
|
||||
+ fprintf(ptCreateFile, "%s -L pstex -D +%d:%d %s %s.eps\n", prog, depth, iStartDepth, from, szFileName);
|
||||
@ -325,17 +333,18 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+
|
||||
+/*************************************************************************
|
||||
+ *************************************************************************/
|
||||
+
|
||||
void
|
||||
genpstex_t_option(char opt, char *optarg)
|
||||
{
|
||||
@@ -130,6 +431,32 @@ genpstex_option(char opt, char *optarg)
|
||||
@@ -132,6 +437,32 @@ genpstex_option(char opt, char *optarg)
|
||||
genlatex_option(opt, optarg);
|
||||
}
|
||||
|
||||
+struct driver dev_pstex_p = {
|
||||
+ genpstex_p_option,
|
||||
+ genpstex_p_start,
|
||||
+ gendev_null,
|
||||
+ (void(*)(float,float))gendev_null,
|
||||
+ genpstex_p_arc,
|
||||
+ genpstex_p_ellipse,
|
||||
+ genpstex_p_line,
|
||||
@ -348,7 +357,7 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
+struct driver dev_pdftex_p = {
|
||||
+ genpstex_p_option,
|
||||
+ genpdftex_p_start,
|
||||
+ gendev_null,
|
||||
+ (void(*)(float,float))gendev_null,
|
||||
+ genpstex_p_arc,
|
||||
+ genpstex_p_ellipse,
|
||||
+ genpstex_p_line,
|
||||
@ -361,10 +370,9 @@ diff --git a/fig2dev-3.2.6a/fig2dev/dev/genpstex.c b/fig2dev-3.2.6a/fig2dev/dev/
|
||||
struct driver dev_pstex_t = {
|
||||
genpstex_t_option,
|
||||
genpstex_t_start,
|
||||
diff --git a/fig2dev-3.2.6a/fig2dev/drivers.h b/fig2dev-3.2.6a/fig2dev/drivers.h
|
||||
--- a/fig2dev-3.2.6a/fig2dev/drivers.h
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/drivers.h
|
||||
@@ -32,8 +32,10 @@ extern struct driver dev_eps;
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/drivers.h 2018-05-07 10:00:19.621980757 +0000
|
||||
@@ -33,8 +33,10 @@ extern struct driver dev_eps;
|
||||
extern struct driver dev_pdf;
|
||||
extern struct driver dev_pdftex;
|
||||
extern struct driver dev_pdftex_t;
|
||||
@ -391,29 +399,33 @@ diff --git a/fig2dev-3.2.6a/fig2dev/drivers.h b/fig2dev-3.2.6a/fig2dev/drivers.h
|
||||
{"pstricks", &dev_pstricks},
|
||||
{"ptk", &dev_ptk},
|
||||
{"shape", &dev_shape},
|
||||
diff --git a/fig2dev-3.2.6a/fig2dev/fig2dev.c b/fig2dev-3.2.6a/fig2dev/fig2dev.c
|
||||
--- a/fig2dev-3.2.6a/fig2dev/fig2dev.c
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/fig2dev.c
|
||||
@@ -691,6 +691,18 @@ help_msg(void)
|
||||
#endif /* NFSS */
|
||||
puts(" -p name name of the PostScript file to be overlaid");
|
||||
+++ b/fig2dev-3.2.6a/fig2dev/fig2dev.c 2018-05-07 10:00:19.621980757 +0000
|
||||
@@ -823,6 +823,23 @@ help_msg(void)
|
||||
);
|
||||
}
|
||||
|
||||
+ puts("PSTEX_P and PDFTEX_P Options:\n");
|
||||
+ puts(" -p name basename of the files to be created\n");
|
||||
+ if (dev == NULL || !strcmp(lang, "pstex_p") ||
|
||||
+ !strcmp(lang, "pdftex_p")) {
|
||||
+ puts(
|
||||
+"PSTEX_P and PDFTEX_P Options:\n"
|
||||
+" -p name basename of the files to be created\n"
|
||||
+#ifdef NFSS
|
||||
+ puts(" -F don't set font family/series/shape, so you can");
|
||||
+ puts(" set it from latex");
|
||||
+" -F don't set font family/series/shape, so you can\n"
|
||||
+" set it from latex\n"
|
||||
+#endif /* NFSS */
|
||||
+ puts(" -d dmag set separate magnification for length of line dashes to dmag\n");
|
||||
+ puts(" -E num set encoding for text translation (0 = no translation,");
|
||||
+ puts(" 1 = ISO-8859-1, 2 = ISO-8859-2)");
|
||||
+ puts(" -l lwidth set threshold between thin and thick lines to lwidth\n");
|
||||
+ puts(" -v verbose mode\n");
|
||||
+" -d dmag set separate magnification for length of line dashes to dmag\n"
|
||||
+" -E num set encoding for text translation (0 no translation,\n"
|
||||
+" 1 ISO-8859-1, 2 ISO-8859-2)\n"
|
||||
+" -l lwidth set threshold between thin and thick lines to lwidth\n"
|
||||
+" -v verbose mode\n"
|
||||
+ );
|
||||
+ }
|
||||
+
|
||||
puts("SHAPE (ShapePar driver) Options:");
|
||||
puts(" -n name Set basename of the macro");
|
||||
puts(" (e.g. \"face\" gives faceshape and facepar)");
|
||||
@@ -830,6 +842,12 @@ gendev_objects(F_compound *objects, stru
|
||||
if (dev == NULL || !strcmp(lang, "shape")) {
|
||||
puts(
|
||||
"SHAPE (ShapePar driver) Options:\n"
|
||||
@@ -1008,6 +1025,12 @@ gendev_objects(F_compound *objects, stru
|
||||
|
||||
int rec_comp(struct obj_rec *r1, struct obj_rec *r2)
|
||||
{
|
||||
@ -426,9 +438,8 @@ diff --git a/fig2dev-3.2.6a/fig2dev/fig2dev.c b/fig2dev-3.2.6a/fig2dev/fig2dev.c
|
||||
return (r2->depth - r1->depth);
|
||||
}
|
||||
|
||||
diff --git a/fig2dev-3.2.6a/fig2mpdf/copyright.txt b/fig2dev-3.2.6a/fig2mpdf/copyright.txt
|
||||
--- a/fig2dev-3.2.6a/fig2mpdf/copyright.txt
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/copyright.txt
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/copyright.txt 2018-05-07 10:00:19.625980684 +0000
|
||||
@@ -0,0 +1,25 @@
|
||||
+The following files contain copyright and license info for
|
||||
+the code they contain:
|
||||
@ -455,9 +466,8 @@ diff --git a/fig2dev-3.2.6a/fig2mpdf/copyright.txt b/fig2dev-3.2.6a/fig2mpdf/cop
|
||||
+
|
||||
+ (Author's note: the license is in the file gpl.txt, which is included
|
||||
+ in the archive.)
|
||||
diff --git a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1 b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1
|
||||
--- a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1 2018-05-07 10:00:19.625980684 +0000
|
||||
@@ -0,0 +1,208 @@
|
||||
+.TH fig2mpdf 1 "Jun 2006" "" "Including xfig figures into LaTeX documents"
|
||||
+.SH NAME
|
||||
@ -667,9 +677,8 @@ diff --git a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf.1 b/fig2dev-3.2.6a/fig2mpdf/fig2mp
|
||||
+.IR pdflatex(1)
|
||||
+.IR latex(1)
|
||||
+.IR dvips(1)
|
||||
diff --git a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf
|
||||
--- a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf
|
||||
+++ b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf 2018-05-07 10:00:19.625980684 +0000
|
||||
@@ -0,0 +1,653 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
@ -1324,23 +1333,22 @@ diff --git a/fig2dev-3.2.6a/fig2mpdf/fig2mpdf b/fig2dev-3.2.6a/fig2mpdf/fig2mpdf
|
||||
+}
|
||||
+' -- $*
|
||||
+
|
||||
diff --git a/fig2dev-3.2.6a/man/fig2dev.1.in b/fig2dev-3.2.6a/man/fig2dev.1.in
|
||||
--- a/fig2dev-3.2.6a/man/fig2dev.1.in
|
||||
+++ b/fig2dev-3.2.6a/man/fig2dev.1.in
|
||||
+++ b/fig2dev-3.2.6a/man/fig2dev.1.in 2018-05-07 10:15:07.453476364 +0000
|
||||
@@ -64,8 +64,8 @@ Set the output graphics language.
|
||||
Valid languages are
|
||||
\fBbox, cgm, dxf, epic, eepic, eepicemu, emf, eps, gbx (Gerber beta
|
||||
driver), gif, ibmgl, jpeg, latex, map (HTML image map), mf (MetaFont),
|
||||
-mp (MetaPost), mmp (Multi-MetaPost), pcx, pdf, pdftex, pdftex_t, pic,
|
||||
-mp (MetaPost), pcx, pdf, pdftex, pdftex_t, pic,
|
||||
-pict2e, pictex, png, ppm, ps, pstex, pstex_t, pstricks, ptk (Perl/tk),
|
||||
+mp (MetaPost), mmp (Multi-MetaPost), pcx, pdf, pdftex, pdftex_t, pdftex_p, pic,
|
||||
+mp (MetaPost), pcx, pdf, pdftex, pdftex_t, pdftex_p, pic,
|
||||
+pict2e, pictex, png, ppm, ps, pstex, pstex_t, pstex_p, pstricks, ptk (Perl/tk),
|
||||
shape (LaTeX shaped paragraphs), sld (AutoCad slide format), svg (beta
|
||||
driver), textyl, tiff, tikz, tk (tcl/tk), tpic, xbm and xpm\fR.
|
||||
shape (LaTeX shaped paragraphs), sld (AutoCad slide format), svg,
|
||||
textyl, tiff, tikz, tk (tcl/tk), tpic, xbm and xpm\fR.
|
||||
|
||||
@@ -1149,6 +1149,61 @@ PostScript file generated using
|
||||
.B pstex.
|
||||
(see above)
|
||||
@@ -1165,6 +1165,61 @@ text flagged as "TeX Text".
|
||||
The pstex and pdftex drivers accept the same options that the EPS driver
|
||||
accepts.
|
||||
|
||||
+.SH PSTEX_P and PDFTEX_P OPTIONS
|
||||
+The \fBpstex_p\fR language has the same intention as
|
||||
@ -1398,23 +1406,22 @@ diff --git a/fig2dev-3.2.6a/man/fig2dev.1.in b/fig2dev-3.2.6a/man/fig2dev.1.in
|
||||
+document (like "\fB\\sfshape \\input picture.eepic\fR").
|
||||
+
|
||||
.TP
|
||||
.B \-E num
|
||||
Set encoding for latex text translation
|
||||
@@ -1542,6 +1597,13 @@ which aren't scaled at all.
|
||||
.PP
|
||||
Rotated text is only supported in the IBM-GL (HP/GL) and PostScript (including eps)
|
||||
languages.
|
||||
+.PP
|
||||
.B \-n name
|
||||
Set the Title part of the PostScript output to
|
||||
@@ -1588,6 +1643,12 @@ The string \fIfont\fR can be one of
|
||||
|
||||
|
||||
.SH BUGS and RESTRICTIONS
|
||||
+In \fBpdftex_p\fR language \fIfig2dev\fR can not determine the exact sizes of
|
||||
+the special texts set by pdflatex afterwards. If these texts are bigger than
|
||||
+expected the calculated bounding box might be too small so that some texts passes
|
||||
+over the figure boundaries. If this happen you have to put an invisible
|
||||
+rectangle (line width 0) around the text or the entire figure.
|
||||
+
|
||||
.SH COPYRIGHT
|
||||
Copyright (c) 1991 Micah Beck
|
||||
+.PP
|
||||
Please send bug reports, fixes, new features etc. to:
|
||||
.br
|
||||
@@ -1624,3 +1686,7 @@ Michael Schrick (m_schrick@hotmail.com)
|
||||
\&@PACKAGE_BUGREPORT@
|
||||
@@ -1677,3 +1738,7 @@ Michael Schrick (m_schrick@hotmail.com)
|
||||
The GBX (Gerber) driver was written by
|
||||
.br
|
||||
Edward Grace (ej.grace@imperial.ac.uk).
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,18 +1,11 @@
|
||||
From: Roland Rosenfeld <roland@debian.org>
|
||||
Subject: rgb.txt can not be located via FIG2DEV_RGBFILE environment variable.
|
||||
This allows to run the test suite without the package being installed before.
|
||||
This allows one to run the test suite without the package being
|
||||
installed before.
|
||||
|
||||
--- a/fig2dev/colors.c
|
||||
+++ b/fig2dev/colors.c
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "pi.h"
|
||||
|
||||
#include "fig2dev.h"
|
||||
+#include <stdlib.h>
|
||||
|
||||
struct color_db {
|
||||
char *name;
|
||||
@@ -108,10 +109,15 @@ read_colordb(void)
|
||||
@@ -110,10 +110,15 @@ read_colordb(void)
|
||||
char s[100], s1[100], *c1, *c2;
|
||||
unsigned short r,g,b;
|
||||
struct color_db *col;
|
||||
|
@ -1,41 +0,0 @@
|
||||
Description: Some input sanitizing when reading FIG files.
|
||||
Bug-Debian: https://bugs.debian.org/881143
|
||||
Bug-Debian: https://bugs.debian.org/881144
|
||||
Author: Thomas Loimer <thomas.loimer@tuwien.ac.at>
|
||||
|
||||
--- a/fig2dev/read.c
|
||||
+++ b/fig2dev/read.c
|
||||
@@ -1329,8 +1329,14 @@ read_textobject(FILE *fp)
|
||||
| PSFONT_TEXT;
|
||||
|
||||
/* keep the font number reasonable */
|
||||
- if (t->font > MAXFONT(t))
|
||||
+ if (t->font > MAXFONT(t)) {
|
||||
t->font = MAXFONT(t);
|
||||
+ } else if (t->font < 0 ) {
|
||||
+ if (psfont_text(t) && t->font < -1)
|
||||
+ t->font = -1;
|
||||
+ else
|
||||
+ t->font = 0;
|
||||
+ }
|
||||
fix_and_note_color(&t->color);
|
||||
t->comments = attach_comments(); /* attach any comments */
|
||||
return t;
|
||||
--- a/fig2dev/read1_3.c
|
||||
+++ b/fig2dev/read1_3.c
|
||||
@@ -470,6 +470,15 @@ read_textobject(FILE *fp)
|
||||
free((char*) t);
|
||||
return(NULL);
|
||||
}
|
||||
+ /* keep the font number within valid range */
|
||||
+ if (t->font > MAXFONT(t)) {
|
||||
+ t->font = MAXFONT(t);
|
||||
+ } else if (t->font < 0 ) {
|
||||
+ if (psfont_text(t) && t->font < -1)
|
||||
+ t->font = -1;
|
||||
+ else
|
||||
+ t->font = 0;
|
||||
+ }
|
||||
(void)strcpy(t->cstring, buf);
|
||||
if (t->size == 0) t->size = 18;
|
||||
return(t);
|
@ -1,47 +0,0 @@
|
||||
Description: Sanitize input of fill patterns.
|
||||
Bug-Debian: https://bugs.debian.org/881396
|
||||
Author: Thomas Loimer <thomas.loimer@tuwien.ac.at>
|
||||
|
||||
--- a/fig2dev/read.c
|
||||
+++ b/fig2dev/read.c
|
||||
@@ -71,6 +71,8 @@ static int save_comment(void);
|
||||
|
||||
#define FILL_CONVERT(f) ((v2_flag || (f) < WHITE_FILL) \
|
||||
? (v30_flag? f: (f-1)) : 20 - ((f)-1)*5)
|
||||
+#define FILL_SANITIZE(f) ((f) < UNFILLED || (f) >= \
|
||||
+ NUMSHADES + NUMTINTS + NUMPATTERNS) ? UNFILLED : f
|
||||
|
||||
/* input buffer size */
|
||||
#define BUF_SIZE 1024
|
||||
@@ -547,6 +549,7 @@ read_arcobject(FILE *fp)
|
||||
}
|
||||
a->thickness *= round(THICK_SCALE);
|
||||
a->fill_style = FILL_CONVERT(a->fill_style);
|
||||
+ a->fill_style = FILL_SANITIZE(a->fill_style);
|
||||
NOTE_FILL(a);
|
||||
fix_and_note_color(&a->pen_color);
|
||||
if (fa) {
|
||||
@@ -730,6 +733,7 @@ read_ellipseobject(void)
|
||||
fix_and_note_color(&e->pen_color);
|
||||
e->thickness *= round(THICK_SCALE);
|
||||
e->fill_style = FILL_CONVERT(e->fill_style);
|
||||
+ e->fill_style = FILL_SANITIZE(e->fill_style);
|
||||
NOTE_FILL(e);
|
||||
e->comments = attach_comments(); /* attach any comments */
|
||||
return e;
|
||||
@@ -895,6 +899,7 @@ read_lineobject(FILE *fp)
|
||||
l->radius *= round(THICK_SCALE);
|
||||
l->thickness *= round(THICK_SCALE);
|
||||
l->fill_style = FILL_CONVERT(l->fill_style);
|
||||
+ l->fill_style = FILL_SANITIZE(l->fill_style);
|
||||
NOTE_FILL(l);
|
||||
fix_and_note_color(&l->pen_color);
|
||||
if (fa) {
|
||||
@@ -1051,6 +1056,7 @@ read_splineobject(FILE *fp)
|
||||
}
|
||||
s->thickness *= round(THICK_SCALE);
|
||||
s->fill_style = FILL_CONVERT(s->fill_style);
|
||||
+ s->fill_style = FILL_SANITIZE(s->fill_style);
|
||||
NOTE_FILL(s);
|
||||
fix_and_note_color(&s->pen_color);
|
||||
if (fa) {
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5e61a3d9a4f83db4b3199ee82dd54bb65b544369f1e8e38a2606c44cf71667a7
|
||||
size 507820
|
3
fig2dev-3.2.7a.tar.xz
Normal file
3
fig2dev-3.2.7a.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bda219a15efcdb829e6cc913a4174f5a4ded084bf91565c783733b34a89bfb28
|
||||
size 507288
|
@ -1,22 +1,22 @@
|
||||
---
|
||||
fig2dev/dev/genps.c | 26 +++++++++++++++++++++++---
|
||||
fig2dev/dev/genps.c | 29 ++++++++++++++++++++++++-----
|
||||
fig2dev/dev/genpstex.c | 8 ++++++--
|
||||
fig2dev/fig2ps2tex.csh | 2 +-
|
||||
fig2dev/getopt.c | 10 ++++++++++
|
||||
fig2dev/getopt.c | 9 +++++++++
|
||||
transfig/transfig.c | 2 ++
|
||||
5 files changed, 42 insertions(+), 6 deletions(-)
|
||||
5 files changed, 42 insertions(+), 8 deletions(-)
|
||||
|
||||
--- fig2dev/dev/genps.c
|
||||
+++ fig2dev/dev/genps.c 2017-02-02 13:47:11.888588548 +0000
|
||||
@@ -56,6 +56,7 @@
|
||||
+++ fig2dev/dev/genps.c 2018-05-07 08:16:40.161130640 +0000
|
||||
@@ -59,6 +59,7 @@
|
||||
#include <pwd.h>
|
||||
#endif
|
||||
#include <locale.h>
|
||||
+#include <langinfo.h>
|
||||
#include "bool.h"
|
||||
#include "pi.h"
|
||||
|
||||
@@ -801,8 +802,9 @@ genps_start(F_compound *objects)
|
||||
#include "fig2dev.h" /* includes "bool.h" */
|
||||
@@ -842,8 +843,9 @@ genps_start(F_compound *objects)
|
||||
fprintf(tfp, "%s\n", SPLINE_PS);
|
||||
#ifdef I18N
|
||||
if (support_i18n && iso_text_exist(objects)) {
|
||||
@ -27,14 +27,15 @@
|
||||
FILE *fp;
|
||||
libdir = getenv("FIG2DEV_LIBDIR");
|
||||
#ifdef I18N_DATADIR
|
||||
@@ -810,16 +812,34 @@ genps_start(F_compound *objects)
|
||||
@@ -851,18 +853,35 @@ genps_start(F_compound *objects)
|
||||
libdir = I18N_DATADIR;
|
||||
#endif
|
||||
locale = setlocale(LC_CTYPE, NULL);
|
||||
+ llen = strcspn(locale, ".@");
|
||||
+ codeset = nl_langinfo(CODESET);
|
||||
if (locale == NULL) {
|
||||
fprintf(stderr, "fig2dev: LANG not defined; assuming C locale\n");
|
||||
fprintf(stderr,
|
||||
"fig2dev: LANG not defined; assuming C locale\n");
|
||||
locale = "C";
|
||||
}
|
||||
- sprintf(localefile, "%s/%s.ps", libdir, locale);
|
||||
@ -42,8 +43,10 @@
|
||||
/* get filename like ``/usr/local/lib/fig2dev/japanese.ps'' */
|
||||
fp = fopen(localefile, "rb");
|
||||
if (fp == NULL) {
|
||||
fprintf(stderr, "fig2dev: can't open file: %s\n", localefile);
|
||||
- fprintf(stderr, "fig2dev: can not open file: %s\n",
|
||||
- localefile);
|
||||
- } else {
|
||||
+ fprintf(stderr, "fig2dev: can not open file: %s\n", localefile);
|
||||
+ }
|
||||
+ if (fp == NULL && strlen(locale) != llen) {
|
||||
+ locale[llen] = '\0';
|
||||
@ -62,19 +65,19 @@
|
||||
+ }
|
||||
+ if (fp) {
|
||||
while (fgets(str, sizeof(str), fp)) {
|
||||
if (strstr(str, "CompositeRoman")) enable_composite_font = true;
|
||||
fputs(str, tfp);
|
||||
if (strstr(str, "CompositeRoman"))
|
||||
enable_composite_font = true;
|
||||
--- fig2dev/dev/genpstex.c
|
||||
+++ fig2dev/dev/genpstex.c 2017-02-02 13:47:38.580050694 +0000
|
||||
@@ -44,6 +44,7 @@
|
||||
+++ fig2dev/dev/genpstex.c 2018-05-07 08:10:27.872048970 +0000
|
||||
@@ -47,6 +47,7 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
+#include <sys/stat.h>
|
||||
#include "bool.h"
|
||||
|
||||
#include "fig2dev.h"
|
||||
@@ -61,10 +62,13 @@ extern void
|
||||
#include "object.h" /* does #include <X11/xpm.h> */
|
||||
@@ -63,10 +64,13 @@ extern void
|
||||
genps_spline(F_spline *s),
|
||||
genlatex_option(char opt, char *optarg),
|
||||
genlatex_text(F_text *t),
|
||||
@ -91,19 +94,19 @@
|
||||
extern void genpdf_option(char opt, char *optarg); /* genpdf.c */
|
||||
extern void genpdf_start(F_compound *objects); /* genpdf.c */
|
||||
--- fig2dev/fig2ps2tex.csh
|
||||
+++ fig2dev/fig2ps2tex.csh 2017-02-02 13:43:20.089154382 +0000
|
||||
@@ -21,7 +21,7 @@
|
||||
#
|
||||
+++ fig2dev/fig2ps2tex.csh 2018-05-07 08:11:38.206742453 +0000
|
||||
@@ -22,7 +22,7 @@
|
||||
# 2016-07-07 Thomas Loimer
|
||||
# * use here-document, instead of echo
|
||||
#
|
||||
-
|
||||
+set echo_style=bsd
|
||||
+set echo_style = bsd
|
||||
set bbox = `grep "^%%BoundingBox:" $1`
|
||||
|
||||
set xsp = `echo "3k $bbox[4] $bbox[2] - 72 / p" | dc`
|
||||
--- fig2dev/getopt.c
|
||||
+++ fig2dev/getopt.c 2017-02-02 13:43:20.089154382 +0000
|
||||
@@ -45,6 +45,7 @@ static char sccsfid[] = "@(#) getopt.c 5
|
||||
+++ fig2dev/getopt.c 2018-05-07 08:13:44.400397232 +0000
|
||||
@@ -48,6 +48,7 @@ static char sccsfid[] = "@(#) getopt.c 5
|
||||
#define EMSG ""
|
||||
#define ENDARGS "--"
|
||||
|
||||
@ -111,9 +114,9 @@
|
||||
/*
|
||||
* get option letter from argument vector
|
||||
*/
|
||||
@@ -89,3 +90,12 @@ fig_getopt(int nargc, char **nargv, char
|
||||
@@ -94,3 +95,11 @@ fig_getopt(int nargc, char **nargv, char
|
||||
}
|
||||
return(optc); /* dump back option letter */
|
||||
return optc; /* dump back option letter */
|
||||
}
|
||||
+#else
|
||||
+#include <unistd.h>
|
||||
@ -123,9 +126,8 @@
|
||||
+ return getopt(nargc, nargv, ostr);
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
--- transfig/transfig.c
|
||||
+++ transfig/transfig.c 2017-02-02 13:43:20.089154382 +0000
|
||||
+++ transfig/transfig.c 2018-05-07 08:01:42.105796359 +0000
|
||||
@@ -26,6 +26,8 @@
|
||||
|
||||
#include <stdio.h>
|
||||
|
@ -1,53 +1,32 @@
|
||||
Index: transfig.3.2.5e/fig2dev/read1_3.c
|
||||
===================================================================
|
||||
---
|
||||
fig2dev-3.2.6a/fig2dev/alloc.h | 20 ++++++++++----------
|
||||
fig2dev-3.2.6a/fig2dev/read1_3.c | 2 ++
|
||||
2 files changed, 12 insertions(+), 10 deletions(-)
|
||||
fig2dev-3.2.7a/fig2dev/alloc.h | 20 ++++++++++----------
|
||||
1 file changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
--- fig2dev-3.2.6a/fig2dev/alloc.h
|
||||
+++ fig2dev-3.2.6a/fig2dev/alloc.h 2017-02-02 13:53:24.529089166 +0000
|
||||
@@ -13,15 +13,15 @@
|
||||
* notice remain intact.
|
||||
--- fig2dev-3.2.7a/fig2dev/alloc.h
|
||||
+++ fig2dev-3.2.7a/fig2dev/alloc.h 2018-05-07 08:49:32.048501663 +0000
|
||||
@@ -16,15 +16,15 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-#define Line_malloc(z) z = (F_line*)malloc(LINOBJ_SIZE)
|
||||
-#define Pic_malloc(z) z = (F_pic*)malloc(PIC_SIZE)
|
||||
-#define Spline_malloc(z) z = (F_spline*)malloc(SPLOBJ_SIZE)
|
||||
-#define Ellipse_malloc(z) z = (F_ellipse*)malloc(ELLOBJ_SIZE)
|
||||
-#define Arc_malloc(z) z = (F_arc*)malloc(ARCOBJ_SIZE)
|
||||
-#define Compound_malloc(z) z = (F_compound*)malloc(COMOBJ_SIZE)
|
||||
-#define Text_malloc(z) z = (F_text*)malloc(TEXOBJ_SIZE)
|
||||
-#define Point_malloc(z) z = (F_point*)malloc(POINT_SIZE)
|
||||
-#define Control_malloc(z) z = (F_control*)malloc(CONTROL_SIZE)
|
||||
-#define Arrow_malloc(z) z = (F_arrow*)malloc(ARROW_SIZE)
|
||||
+#define Line_malloc(z) z = (F_line*)calloc(LINOBJ_SIZE,1)
|
||||
+#define Pic_malloc(z) z = (F_pic*)calloc(PIC_SIZE,1)
|
||||
+#define Spline_malloc(z) z = (F_spline*)calloc(SPLOBJ_SIZE,1)
|
||||
+#define Ellipse_malloc(z) z = (F_ellipse*)calloc(ELLOBJ_SIZE,1)
|
||||
+#define Arc_malloc(z) z = (F_arc*)calloc(ARCOBJ_SIZE,1)
|
||||
+#define Compound_malloc(z) z = (F_compound*)calloc(COMOBJ_SIZE,1)
|
||||
+#define Text_malloc(z) z = (F_text*)calloc(TEXOBJ_SIZE,1)
|
||||
+#define Point_malloc(z) z = (F_point*)calloc(POINT_SIZE,1)
|
||||
+#define Control_malloc(z) z = (F_control*)calloc(CONTROL_SIZE,1)
|
||||
+#define Arrow_malloc(z) z = (F_arrow*)calloc(ARROW_SIZE,1)
|
||||
-#define Line_malloc(z) z = malloc(LINOBJ_SIZE)
|
||||
-#define Pic_malloc(z) z = malloc(PIC_SIZE)
|
||||
-#define Spline_malloc(z) z = malloc(SPLOBJ_SIZE)
|
||||
-#define Ellipse_malloc(z) z = malloc(ELLOBJ_SIZE)
|
||||
-#define Arc_malloc(z) z = malloc(ARCOBJ_SIZE)
|
||||
-#define Compound_malloc(z) z = malloc(COMOBJ_SIZE)
|
||||
-#define Text_malloc(z) z = malloc(TEXOBJ_SIZE)
|
||||
-#define Point_malloc(z) z = malloc(POINT_SIZE)
|
||||
-#define Control_malloc(z) z = malloc(CONTROL_SIZE)
|
||||
-#define Arrow_malloc(z) z = malloc(ARROW_SIZE)
|
||||
+#define Line_malloc(z) z = calloc(LINOBJ_SIZE,1)
|
||||
+#define Pic_malloc(z) z = calloc(PIC_SIZE,1)
|
||||
+#define Spline_malloc(z) z = calloc(SPLOBJ_SIZE,1)
|
||||
+#define Ellipse_malloc(z) z = calloc(ELLOBJ_SIZE,1)
|
||||
+#define Arc_malloc(z) z = calloc(ARCOBJ_SIZE,1)
|
||||
+#define Compound_malloc(z) z = calloc(COMOBJ_SIZE,1)
|
||||
+#define Text_malloc(z) z = calloc(TEXOBJ_SIZE,1)
|
||||
+#define Point_malloc(z) z = calloc(POINT_SIZE,1)
|
||||
+#define Control_malloc(z) z = calloc(CONTROL_SIZE,1)
|
||||
+#define Arrow_malloc(z) z = calloc(ARROW_SIZE,1)
|
||||
|
||||
extern char Err_mem[];
|
||||
--- fig2dev-3.2.6a/fig2dev/read1_3.c
|
||||
+++ fig2dev-3.2.6a/fig2dev/read1_3.c 2017-02-02 13:53:24.529089166 +0000
|
||||
@@ -343,6 +343,7 @@ read_lineobject(FILE *fp)
|
||||
l->back_arrow = NULL;
|
||||
l->next = NULL;
|
||||
l->points = Point_malloc(p);
|
||||
+ l->points->next = NULL;
|
||||
n = fscanf(fp, " %d %d %d %lf %d %d %d %d %d %d", &t,
|
||||
&l->style, &l->thickness, &l->style_val,
|
||||
&f, &b, &h, &w, &p->x, &p->y);
|
||||
@@ -401,6 +402,7 @@ read_splineobject(FILE *fp)
|
||||
s->controls = NULL;
|
||||
s->next = NULL;
|
||||
s->points = Point_malloc(p);
|
||||
+ s->points->next = NULL;
|
||||
n = fscanf(fp, " %d %d %d %lf %d %d %d %d %d %d",
|
||||
&t, &s->style, &s->thickness, &s->style_val,
|
||||
&f, &b,
|
||||
|
@ -3,21 +3,22 @@
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
--- fig2dev/dev/readeps.c
|
||||
+++ fig2dev/dev/readeps.c 2017-02-02 13:52:46.733848874 +0000
|
||||
@@ -75,16 +75,22 @@ read_eps_pdf(FILE *file, int filetype, F
|
||||
while (fgets(buf, 512, file) != NULL) {
|
||||
+++ fig2dev/dev/readeps.c 2018-05-07 08:45:37.772825723 +0000
|
||||
@@ -83,9 +83,11 @@ read_eps_pdf(FILE *file, int filetype, F
|
||||
while (fgets(buf, BUFSIZ, file) != NULL) {
|
||||
/* look for /MediaBox for pdf file */
|
||||
if (pdf_flag) {
|
||||
+ char *s;
|
||||
+ for(s=buf; (s=strchr(s,'/')); s++) {
|
||||
if (!strncmp(buf, "/MediaBox", 8)) { /* look for the MediaBox spec */
|
||||
- c = strchr(buf,'[')+1;
|
||||
- if (c && sscanf(c,"%d %d %d %d",llx,lly,&urx,&ury) < 4) {
|
||||
+ c = strchr(s,'[');
|
||||
+ if (c && sscanf(c+1,"%d %d %d %d",llx,lly,&urx,&ury) < 4) {
|
||||
if (!strncmp(buf, "/MediaBox", 9)) { /* look for the MediaBox spec */
|
||||
- c = strchr(buf, '[') + 1;
|
||||
- if (c && sscanf(c, "%d %d %d %d", llx, lly, &urx, &ury) < 4)
|
||||
+ c = strchr(s, '[');
|
||||
+ if (c && sscanf(c+1, "%d %d %d %d", llx, lly, &urx, &ury) < 4)
|
||||
{
|
||||
*llx = *lly = 0;
|
||||
urx = paperdef[0].width*72;
|
||||
ury = paperdef[0].height*72;
|
||||
@@ -93,7 +95,11 @@ read_eps_pdf(FILE *file, int filetype, F
|
||||
put_msg("Bad MediaBox in imported PDF file %s, assuming %s size",
|
||||
pic->file, metric? "A4" : "Letter" );
|
||||
}
|
||||
@ -28,4 +29,4 @@
|
||||
+ }
|
||||
/* look for bounding box for EPS file */
|
||||
} else if (!nested && !strncmp(buf, "%%BoundingBox:", 14)) {
|
||||
c=buf+14;
|
||||
c = buf + 14;
|
||||
|
@ -1,3 +1,59 @@
|
||||
-------------------------------------------------------------------
|
||||
Mon May 7 10:28:07 UTC 2018 - werner@suse.de
|
||||
|
||||
- Update to fig2dev version 3.2.7a (Patchlevel 7a (April 2018))
|
||||
o Language previous option current option
|
||||
------------------------------------------------------------
|
||||
cgm -b dummy -a
|
||||
epic -A scale -d scale
|
||||
eepic -A scale -d scale
|
||||
eepicemu -A scale -d scale
|
||||
gbx -i on|off -v
|
||||
ibmgl -m mag,xoff,yoff -m mag -x xoff -y yoff
|
||||
mp -I file -d file
|
||||
ps -S dummy -o
|
||||
o Print language-specific help text by using fig2dev -L lang -h.
|
||||
o Add option -M, multipage, for MetaPost output language.
|
||||
o Add option -P, pagemode, and -z to choose a pagesize for pdf output.
|
||||
o Add option -W (scaling of figures not possible) for tikz.
|
||||
o Add option -b, border width, for LaTeX output language.
|
||||
o Add option -f for pstex_t and pdftex_t output language.
|
||||
o Add uk_UA and ru_RU encodings for PostScript output. Ticket #12.
|
||||
o Fix regression whereupon flipped ellipses were not read. Ticket #23.
|
||||
o Distribute i18n files ru_RU.CP1251.ps and uk_UA.KOI8-U.ps.
|
||||
o Make test "survive debian bug #890016" succeed on 32 bit systems.
|
||||
o Distribute the X bitmaps files within fig2dev, no need to install
|
||||
these files. The files were needed for Tk and Perl/Tk output.
|
||||
o Add option -w, wrap (create stand-alone perl file) for Perl/Tk output.
|
||||
o Update help text: Output help for dxf and textyl output language,
|
||||
add description of -g option for Tk/Tcl and Perl/Tk output, allow -f
|
||||
option for pstex_t and pdftex_t output language.
|
||||
o Sanitize input. Do not segfault on malformed input files. Fixes debian
|
||||
bugs 881143, 881144, 881396, 890015, 890016, 882021 and also 882022.
|
||||
o Do not put an %%Orientation: comment into PostScript output. Some
|
||||
viewers would rotate the resulting file, others not.
|
||||
o Fix build on NetBSD, which has a _setmode() function different from
|
||||
_setmode() on Windows. Ticket #17. Also, avoid alloca(). Ticket #16.
|
||||
o tikz output: Omit the semicolon after \pgftext[..]{...};.
|
||||
o Define PostScript patterns with larger tiles, may render better. #13
|
||||
o Fix build in case libXpm is missing. Ticket #15.
|
||||
o Use netpbm programs instead of ghostscript, to produce smaller files.
|
||||
o Correctly embed eps files with binary preview (epsi, typically
|
||||
found on Microsoft systems). Also, allow to embed ps-files. Fixes
|
||||
debian bug 248807, ticket #8.
|
||||
o For compilation, do not depend on PATH_MAX being defined.
|
||||
- Remove patches now upstream
|
||||
fig2dev-3.2.6-genps_oldpatterns.patch
|
||||
fig2dev-3.2.6a-input-sanitizing.patch
|
||||
fig2dev-3.2.6a-style-overflow.patch
|
||||
- Modify patches
|
||||
fig2dev-3.2.6-fig2mpdf-doc.patch
|
||||
fig2dev-3.2.6-fig2mpdf.patch
|
||||
fig2dev-3.2.6a-RGBFILE.patch
|
||||
transfig-3.2.6.dif
|
||||
transfig-fix-afl.patch
|
||||
transfig.3.2.5d-mediaboxrealnb.dif
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Mar 2 15:40:14 UTC 2018 - crrodriguez@opensuse.org
|
||||
|
||||
|
@ -45,7 +45,7 @@ Requires: ghostscript-fonts-std
|
||||
Requires: ghostscript-library
|
||||
Requires: netpbm
|
||||
Requires: texlive-epstopdf
|
||||
Version: 3.2.6a
|
||||
Version: 3.2.7a
|
||||
Release: 0
|
||||
Summary: Graphic Converter
|
||||
#Source: http://sourceforge.net/projects/mcj/files/fig2dev-%{version}.tar.xz/download#/fig2dev-%{version}.tar.xz
|
||||
@ -56,13 +56,10 @@ Patch0: transfig-3.2.6.dif
|
||||
Patch2: transfig.3.2.5-binderman.dif
|
||||
Patch3: transfig.3.2.5d-mediaboxrealnb.dif
|
||||
Patch4: transfig-fix-afl.patch
|
||||
Patch42: fig2dev-3.2.6-genps_oldpatterns.patch
|
||||
Patch43: fig2dev-3.2.6-fig2mpdf.patch
|
||||
Patch44: fig2dev-3.2.6-fig2mpdf-doc.patch
|
||||
Patch45: fig2dev-3.2.6a-RGBFILE.patch
|
||||
Patch46: fig2dev-3.2.6a-man-typo.patch
|
||||
Patch47: fig2dev-3.2.6a-input-sanitizing.patch
|
||||
Patch48: fig2dev-3.2.6a-style-overflow.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%{expand: %%global _exec_prefix %(type -p pkg-config &>/dev/null && pkg-config --variable prefix x11 || echo /usr/X11R6)}
|
||||
%if "%_exec_prefix" == "/usr/X11R6"
|
||||
@ -103,13 +100,10 @@ find -type f | xargs -r chmod a-x,go-w
|
||||
%patch2 -p0 -b .bm
|
||||
%patch3 -p0 -b .mbox
|
||||
%patch4 -p1 -b .afl
|
||||
%patch42 -p2 -b .oldp
|
||||
%patch43 -p2 -b .mpdf
|
||||
%patch44 -p1 -b .mpdfdoc
|
||||
%patch45 -p1 -b .p45
|
||||
%patch46 -p1 -b .p46
|
||||
%patch47 -p1 -b .p47
|
||||
%patch48 -p1 -b .p48
|
||||
|
||||
%build
|
||||
CC=gcc
|
||||
|
Loading…
Reference in New Issue
Block a user