diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-gfx/transfig | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-gfx/transfig')
18 files changed, 3832 insertions, 0 deletions
diff --git a/media-gfx/transfig/Manifest b/media-gfx/transfig/Manifest new file mode 100644 index 000000000000..ba4354a31574 --- /dev/null +++ b/media-gfx/transfig/Manifest @@ -0,0 +1,3 @@ +DIST fig2mpdf-1.1.2.tar.bz2 191438 SHA256 35f02293592244d5ff4a7a60e00023696c05dec855495871226c67669ba4daf3 SHA512 36dea40008371386b47a4451e2f311cc2540ab063e3b61e628a535775d62a8840c5cc20c37b80465184bf041c6e583aaf3e5156079e72211d0a87ff3346d2980 WHIRLPOOL 73f98e0c8f26a0a9f5a06ba38169a107587dd09ecce69c69d251d46274697db7a1923479030693bf9079705820ce67b3df62d0de54492039acd0ac71f4f22fa7 +DIST transfig.3.2.5d.tar.gz 497451 SHA256 ae81214177fb05f91f6e43b0b42633b6e0024570cbc6591a3858e12100ce8aaa SHA512 6e9b9551bf3bff7a94d6a0d8bac336c36b2721f9babc4cf38472737ac737afd27f93dcb012e510d6c439c6aaeed95ba03b19508b4229386915c0dc0751daac10 WHIRLPOOL ca503a9ba228f54d20a6771dfca9dd0e6bb127618db8bc94bf1a62149e007627786fe2eee8f15a47723781d8381950cfac97264b5846550f7c669a8d8c82a1f2 +DIST transfig.3.2.5e.tar.gz 531256 SHA256 8ec5a8f13254dd155622ed3ee0fda1382b1e2b5882d83b9aca1871f12a3e7744 SHA512 ed1379f1112514d90a4b3eecd3222baad311d804b5090e8e66867ec299e4f9a5f8d83ef8939aa6ecaa85a18143b8fb9b97f78e078ac5eeb934a158c55de6bb1e WHIRLPOOL a781dd6fd85ff7ff12219444a8fbc91fc8c7f6fe1b4628cc1fd6bb3feae29392edc62a8f3a4db0945bdf2e67a67af7046864826024acdbaa8a8581a873cdb82f diff --git a/media-gfx/transfig/files/transfig-3.2.5-solaris.patch b/media-gfx/transfig/files/transfig-3.2.5-solaris.patch new file mode 100644 index 000000000000..680a0591f1cf --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5-solaris.patch @@ -0,0 +1,12 @@ +Fixes complation error on both Darwin and Solaris + +--- fig2dev/fig2dev.h ++++ fig2dev/fig2dev.h +@@ -20,6 +20,7 @@ + #include "patchlevel.h" + #include <math.h> + #include <sys/file.h> ++#include <sys/stat.h> + #include <signal.h> + #include <string.h> + #include <pwd.h> diff --git a/media-gfx/transfig/files/transfig-3.2.5c-maxfontsize.patch b/media-gfx/transfig/files/transfig-3.2.5c-maxfontsize.patch new file mode 100644 index 000000000000..9ce105fe9355 --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5c-maxfontsize.patch @@ -0,0 +1,44 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 09_maxfontsize.dpatch by Roland Rosenfeld <roland@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: For fonts >=42pt use the given font size in TeX instead of +## DP: restricting this to 42pt. This allows to create posters using +## DP: \usepackage{type1cm}. See +## DP: http://linuxgazette.vlsm.org/issue96/artime.html and Bug#343139 + +@DPATCH@ +diff -urNad transfig~/LATEX.AND.XFIG transfig/LATEX.AND.XFIG +--- transfig~/LATEX.AND.XFIG ++++ transfig/LATEX.AND.XFIG +@@ -55,7 +55,7 @@ + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% LaTeX Preamble %%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +-\documentstyle[12pt,bezier,amstex]{article} % include bezier curves ++\documentclass[12pt,bezier,amstex]{article} % include bezier curves + \renewcommand\baselinestretch{1.0} % single space + \pagestyle{empty} % no headers and page numbers + \oddsidemargin -10 true pt % Left margin on odd-numbered pages. +@@ -72,7 +72,9 @@ + \usepackage{epsfig} + + \usepackage{graphicx} % Graphics package +- ++ ++\usepackage{type1cm} % Necessary for fonts bigger than 42pt ++ + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Document Beginning %%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +diff -urNad transfig~/fig2dev/dev/texfonts.h transfig/fig2dev/dev/texfonts.h +--- transfig~/fig2dev/dev/texfonts.h ++++ transfig/fig2dev/dev/texfonts.h +@@ -86,6 +86,7 @@ + + #define TEXFONTSIZE(S) (texfontsizes[((S) <= MAXFONTSIZE) ? (int)(round(S))\ + : (MAXFONTSIZE-1)]) ++#define TEXFONTSIZE(S) (((S) <= MAXFONTSIZE) ? texfontsizes[(int)(round(S))] : (S)) + #define TEXFONTMAG(T) TEXFONTSIZE(T->size*(rigid_text(T) ? 1.0 : fontmag)) + + void setfigfont( F_text *text ); /* genepic.c */ diff --git a/media-gfx/transfig/files/transfig-3.2.5d-MAXWIDTH.patch b/media-gfx/transfig/files/transfig-3.2.5d-MAXWIDTH.patch new file mode 100644 index 000000000000..3ac14818655a --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-MAXWIDTH.patch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 23_MAXWIDTH.dpatch by Roland Rosenfeld <roland@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Increasese MAXWIDTH of embedded images from 8K to 16K (Closes: #610466) + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/dev/psencode.c transfig/fig2dev/dev/psencode.c +--- transfig~/fig2dev/dev/psencode.c ++++ transfig/fig2dev/dev/psencode.c +@@ -18,7 +18,7 @@ + + #include "fig2dev.h" + +-#define MAXWIDTH 8192 ++#define MAXWIDTH 16384 + + #define put_string nc=strlen(s); for(i=0;i<nc;i++) (putc((s[i]),tfp)); Nbyte += nc + diff --git a/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf-r1.patch b/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf-r1.patch new file mode 100644 index 000000000000..879b4471254c --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf-r1.patch @@ -0,0 +1,1425 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 14_fig2mpdf.dpatch by Michael Pfeiffer <p3fff@web.de> +## +## All lines beginning with `## DP:' are a description of the patch. + +## DP: creating multilayered or singlelayer PDF or EPS figures for +## DP: including into LaTeX documents. +## DP: http://p3f.gmxhome.de/fig2mpdf/fig2mpdf.html + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/doc/fig2dev.1 transfig/doc/fig2dev.1 +--- transfig~/doc/fig2dev.1 ++++ transfig/doc/fig2dev.1 +@@ -53,8 +53,8 @@ + \fBbox, cgm, 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, pictex, png, ppm, ps, +-pstex, pstex_t, pstricks, ptk (Perl/tk), ++pcx, pdf, pdftex, pdftex_t, pdftex_p, pic, 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, tk (tcl/tk), tpic, xbm and +@@ -1062,6 +1062,62 @@ + font. Option 1 sets LaTeX font size only. Option 2 issues no font + commands at all. + ++.SH PSTEX_P and PDFTEX_P OPTIONS ++The \fBpstex_p\fR language has the same intention as ++the combination of \fBpstex\fR and \fBpstex_t\fR. ++The only reason to use \fBpstex_p\fR is that you have partially overlayed texts. ++\fBpstex_p\fR splits the Fig file concerning the depths of existing texts. Because ++of it's necessary to get the resulting size of the figure for the pdf document ++you have to specify the target document format ++(i.e. using \fBpstex_p\fR rsp. \fBpdftex_p\fR). ++.br ++Two files results by using this language: ++.br ++.HP +.3i ++1) A bash script for creating and removing the necessary graphics files. ++Extension: \fB.create\fR ++.HP +.3i ++.HP +.3i ++2) The latex code which includes all graphics files and special texts. Content is ++put to stdout. ++ ++.TP ++The \fBpstex_p\fR driver has the following special options: ++ ++.TP ++.B \-p basename ++specifies the basename of the files to be created (see (1) above). This option ++is mandatory. ++.TP ++.B "\-d dmag" ++Set a separate magnification for the length of line dashes to ++.I dmag. ++.TP ++.B \-E num ++Set encoding for latex text translation (0 no translation, 1 ISO-8859-1, 2 ISO-8859-2) ++.TP ++.B "\-l lwidth" ++Sets the threshold between LaTeX thin and thick lines to ++.I lwidth ++pixels. ++LaTeX supports only two different line width: \\thinlines and \\thicklines. ++Lines of width greater than ++.I lwidth ++pixels are drawn as \\thicklines. ++Also affects the size of dots in dotted line style. ++The default is 1. ++.TP ++.B \-v ++Verbose mode. ++.TP ++.B \-F ++Don't set the font face, series, and style; only set it's size and the ++baselineskip. By default, fig2dev sets all 5 font parameters when it ++puts some text. The disadvantage is that you can't set the font from your ++LaTeX document. With this option on, you can set the font from your LaTeX ++document (like "\fB\\sfshape \\input picture.eepic\fR"). ++ ++ + .SH TK and PTK OPTIONS (tcl/tk and Perl/tk) + .TP + .B \-l dummy_arg +@@ -1107,6 +1163,13 @@ + .PP + Rotated text is only supported in the IBM-GL (HP/GL) and PostScript (including eps) + languages. ++.PP ++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 + .br +@@ -1187,3 +1250,7 @@ + The GBX (Gerber) driver was written by + .br + Edward Grace (ej.grace@imperial.ac.uk). ++.sp ++The PSTEX_P and PDFTEX_P drivers (overlayed LaTeX texts) was written by ++.br ++Michael Pfeiffer (p3f@gmx.de) +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/dev/genpstex.c transfig/fig2dev/dev/genpstex.c +--- transfig~/fig2dev/dev/genpstex.c ++++ transfig/fig2dev/dev/genpstex.c +@@ -70,7 +70,307 @@ + genps_end (); + + static char pstex_file[1000] = ""; ++static int iObjectsRead = 0; ++static int iTextRead = 0; ++static int iObjectsFileNumber = 0; ++static int iStartDepth; ++static int iLastDepth; ++static FILE * ptCreateFile; ++static char szFileName[1000]; ++static int iLength; ++static int iPdfOutputs = 0; ++ ++#ifdef never ++static double unitlength; ++static double dash_mag = 1.0; ++ ++static int (*translate_coordinates)() = NULL; ++static int (*translate_coordinates_d)() = NULL; ++#else ++extern double unitlength; ++extern double dash_mag; ++ ++extern int (*translate_coordinates)(); ++extern int (*translate_coordinates_d)(); ++#endif ++ ++#define TOP 840 ++#define SWAP(x,y) {tmp=x; x=y; y=tmp;} ++#define TRANS(x,y) (*translate_coordinates)(&x,&y) ++#define TRANS2(x1,y1,x2,y2) (*translate_coordinates)(&x1,&y1); \ ++ (*translate_coordinates)(&x2,&y2) ++#define TRANSD(x,y) (*translate_coordinates_d)(&x,&y) ++ ++static void genpstex_p_finalize_objects(int depth); ++ ++/************************************************************************* ++ *************************************************************************/ ++static ++translate2(xp, yp) ++ int *xp, *yp; ++{ ++ *xp = *xp + 1; ++ *yp = (double)(TOP - *yp -1); ++ } ++ ++static ++translate1_d(xp, yp) ++ double *xp, *yp; ++{ ++ *xp = *xp + 1.0; ++ *yp = *yp + 1.0; ++ } ++ ++static ++translate2_d(xp, yp) ++ double *xp, *yp; ++{ ++ *xp = *xp + 1.0; ++ *yp = (double)TOP - *yp -1.0; ++ } ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_option(opt, optarg) ++char opt, *optarg; ++{ ++ if (opt == 'p') ++ { ++ strcpy(pstex_file, optarg); ++ } ++ else ++ genlatex_option(opt, optarg); ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_start(objects) ++ F_compound *objects; ++{ ++ int tmp; ++ struct stat tStat; ++ long lUnitLength; ++ ++ if (*pstex_file == '\0') ++ { ++ put_msg("Argument -p is mandatory to pstex_p."); ++ exit(1); ++ } ++ ++ strncpy(szFileName, pstex_file, 900); ++ iLength = strlen(szFileName); ++ ++ sprintf(szFileName + iLength, ".create"); ++ ptCreateFile = fopen (szFileName, "wb"); ++ ++ if ( ! ptCreateFile) ++ { ++ put_msg("Couldn't open %s for writing", szFileName); ++ exit(1); ++ } ++ 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, "while getopts \"r\" Option\n"); ++ fprintf(ptCreateFile, "do\n"); ++ fprintf(ptCreateFile, " case $Option in\n"); ++ fprintf(ptCreateFile, " r) iOptRemove=1;;\n"); ++ fprintf(ptCreateFile, " *) echo \"illegal option -$Option\"\n"); ++ fprintf(ptCreateFile, " esac\n"); ++ fprintf(ptCreateFile, "done\n"); ++ fprintf(ptCreateFile, "shift $(($OPTIND - 1))\n"); ++ ++ texfontsizes[0] = texfontsizes[1] = ++ TEXFONTSIZE(font_size != 0.0? font_size : DEFAULT_FONT_SIZE); ++ ++ unitlength = mag/ppi; ++ dash_mag /= unitlength*80.0; ++ ++ translate_coordinates = translate2; ++ translate_coordinates_d = translate2_d; ++ ++ TRANS2(llx, lly, urx, ury); ++ if (llx > urx) SWAP(llx, urx) ++ if (lly > ury) SWAP(lly, ury) ++ ++ /* LaTeX start */ ++ ++ /* print any whole-figure comments prefixed with "%" */ ++ if (objects->comments) { ++ fprintf(tfp,"%%\n"); ++ print_comments("% ",objects->comments, ""); ++ fprintf(tfp,"%%\n"); ++ } ++ ++ lUnitLength = (long) (round(4736286.72*unitlength)); ++ fprintf(tfp, "\\setlength{\\unitlength}{%lisp}%%\n", ++ lUnitLength); ++ /* define the SetFigFont macro */ ++ define_setfigfont(tfp); ++ ++ sprintf(szFileName + iLength, ".size"); ++ fprintf(ptCreateFile, "if [ \"$iOptRemove\" == \"\" ]; then\n"); ++ if (iPdfOutputs) ++ fprintf(ptCreateFile, " echo \"\\setlength\\pdfpagewidth{%3.2fpt}\\setlength\\pdfpageheight{%3.2fpt}\" > %s\n", ++ (float) lUnitLength / 65536 * (urx - llx), (float) lUnitLength / 65536 * (ury - lly), szFileName); ++ else ++ fprintf(ptCreateFile, "echo -n\"\" > %s\n", szFileName); ++ fprintf(ptCreateFile, "else\n rm -f %s\nfi\n", szFileName); ++} ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpdftex_p_start(objects) ++ F_compound *objects; ++{ ++ iPdfOutputs = 1; ++ genpstex_p_start(objects); ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++int genpstex_p_end() ++{ ++ if (iTextRead) ++ { ++ fprintf(tfp, "\\end{picture}%%\n"); ++ iTextRead = 0; ++ } ++ if (iObjectsRead) ++ { ++ genpstex_p_finalize_objects(iLastDepth); ++ iObjectsRead = 0; ++ } ++ ++ /* LaTeX ending */ ++ fprintf(tfp, "\\begin{picture}(%d,%d)\n", urx-llx, ury-lly); ++ fprintf(tfp, "\\end{picture}%%\n"); ++ ++ fclose(ptCreateFile); ++ ++ /* all ok */ ++ return 0; ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_finalize_objects(depth) ++int depth; ++{ ++ char szFileName[1000]; ++ int iLength; ++ ++ strncpy(szFileName, pstex_file, 900); ++ iLength = strlen(szFileName); ++ ++ ++ sprintf(szFileName + iLength, "%03d", iObjectsFileNumber++); ++ 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); ++ } ++ else ++ fprintf(ptCreateFile, "%s -L pstex -D +%d,%d %s %s.eps\n", prog, depth, iStartDepth, from, szFileName); ++ fprintf(ptCreateFile, "else\n rm -f %s.", szFileName); ++ if (iPdfOutputs) ++ fprintf(ptCreateFile, "pdf"); ++ else ++ fprintf(ptCreateFile, "eps"); ++ fprintf(ptCreateFile, "\nfi\n"); ++ ++ fprintf(tfp, "\\begin{picture}(0,0)%%\n"); ++/* newer includegraphics directive suggested by Stephen Harker 1/13/99 */ ++#if defined(LATEX2E_GRAPHICS) ++# if defined(EPSFIG) ++ fprintf(tfp, "\\epsfig{file=%s.eps}%%\n",szFileName); ++# else ++ fprintf(tfp, "\\includegraphics{%s}%%\n",szFileName); ++# endif ++#else ++ fprintf(tfp, "\\special{psfile=%s.eps}%%\n",szFileName); ++#endif ++ fprintf(tfp, "\\end{picture}%%\n"); ++} ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_object(depth) ++int depth; ++{ ++ if (iTextRead) ++ { ++ fprintf(tfp, "\\end{picture}%%\n"); ++ iTextRead = 0; ++ } ++ if (iObjectsRead == 0) ++ { ++ iStartDepth = depth; ++ iObjectsRead = 1; ++ } ++ iLastDepth = depth; ++ ++} + ++void genpstex_p_arc(obj) ++F_arc *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++ ++void genpstex_p_ellipse(obj) ++F_ellipse *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++void genpstex_p_line(obj) ++F_line *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++void genpstex_p_spline(obj) ++F_spline *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_text(t) ++F_text *t; ++{ ++ ++ if (!special_text(t)) ++ genpstex_p_object(t->depth); ++ else ++ { ++ if (iObjectsRead) ++ { ++ genpstex_p_finalize_objects(iLastDepth); ++ iObjectsRead = 0; ++ } ++ if (iTextRead == 0) ++ { ++ fprintf(tfp, "\\begin{picture}(0,0)(%d,%d)\n", llx, lly); ++ iTextRead = 1; ++ } ++ genlatex_text(t); ++ } ++ ++} ++ ++/************************************************************************* ++ *************************************************************************/ + void genpstex_t_option(opt, optarg) + char opt, *optarg; + { +@@ -112,6 +412,8 @@ + else genlatex_text(t); + } + ++/************************************************************************* ++ *************************************************************************/ + void genpstex_text(t) + F_text *t; + { +@@ -128,6 +430,32 @@ + genlatex_option(opt, optarg); + } + ++struct driver dev_pstex_p = { ++ genpstex_p_option, ++ genpstex_p_start, ++ gendev_null, ++ genpstex_p_arc, ++ genpstex_p_ellipse, ++ genpstex_p_line, ++ genpstex_p_spline, ++ genpstex_p_text, ++ genpstex_p_end, ++ INCLUDE_TEXT ++}; ++ ++struct driver dev_pdftex_p = { ++ genpstex_p_option, ++ genpdftex_p_start, ++ gendev_null, ++ genpstex_p_arc, ++ genpstex_p_ellipse, ++ genpstex_p_line, ++ genpstex_p_spline, ++ genpstex_p_text, ++ genpstex_p_end, ++ INCLUDE_TEXT ++}; ++ + struct driver dev_pstex_t = { + genpstex_t_option, + genpstex_t_start, +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/drivers.h transfig/fig2dev/drivers.h +--- transfig~/fig2dev/drivers.h ++++ transfig/fig2dev/drivers.h +@@ -30,8 +30,10 @@ + extern struct driver dev_pdf; + extern struct driver dev_pdftex; + extern struct driver dev_pdftex_t; ++extern struct driver dev_pdftex_p; + extern struct driver dev_pstex; + extern struct driver dev_pstex_t; ++extern struct driver dev_pstex_p; + extern struct driver dev_pstricks; + extern struct driver dev_textyl; + extern struct driver dev_tk; +@@ -75,6 +77,7 @@ + {"pdf", &dev_pdf}, + {"pdftex", &dev_pdftex}, + {"pdftex_t", &dev_pdftex_t}, ++ {"pdftex_p", &dev_pdftex_p}, + {"pic", &dev_pic}, + {"pictex", &dev_pictex}, + {"png", &dev_bitmaps}, +@@ -82,6 +85,7 @@ + {"ps", &dev_ps}, + {"pstex", &dev_pstex}, + {"pstex_t", &dev_pstex_t}, ++ {"pstex_p", &dev_pstex_p}, + {"pstricks", &dev_pstricks}, + {"ptk", &dev_ptk}, + {"shape", &dev_shape}, +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/fig2dev.c transfig/fig2dev/fig2dev.c +--- transfig~/fig2dev/fig2dev.c ++++ transfig/fig2dev/fig2dev.c +@@ -651,6 +651,18 @@ + #endif /* NFSS */ + printf(" -p name name of the PostScript file to be overlaid\n"); + ++ printf("PSTEX_P and PDFTEX_P Options:\n"); ++ printf(" -p name basename of the files to be created\n"); ++#ifdef NFSS ++ printf(" -F don't set font family/series/shape, so you can\n"); ++ printf(" set it from latex\n"); ++#endif /* NFSS */ ++ printf(" -d dmag set separate magnification for length of line dashes to dmag\n"); ++ printf(" -E num set encoding for text translation (0 no translation,\n"); ++ printf(" 1 ISO-8859-1, 2 ISO-8859-2)\n"); ++ printf(" -l lwidth set threshold between thin and thick lines to lwidth\n"); ++ printf(" -v verbose mode\n"); ++ + printf("SHAPE (ShapePar driver) Options:\n"); + printf(" -n name Set basename of the macro (e.g. \"face\" gives faceshape and facepar)\n"); + printf("Tcl/Tk (tk) and Perl/Tk (ptk) Options:\n"); +@@ -778,6 +790,12 @@ + int rec_comp(r1, r2) + struct obj_rec *r1, *r2; + { ++ if (r2->depth == r1->depth) ++ { ++ if ((r1->gendev == dev->text) ^ (r2->gendev == dev->text)) ++ return ((r1->gendev == dev->text) * 2 - 1); ++ return (0); ++ } + return (r2->depth - r1->depth); + } + +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2mpdf/copyright.txt transfig/fig2mpdf/copyright.txt +--- transfig~/fig2mpdf/copyright.txt ++++ transfig/fig2mpdf/copyright.txt +@@ -0,0 +1,25 @@ ++The following files contain copyright and license info for ++the code they contain: ++fig2mpdf, fig2mpdf.1, transfig.3.2.4.patch, transfig-3.2.5-alpha7.patch ++ ++-- fig2mpdf copyright begins here -- ++ ++ fig2mpdf/pdftex_p and pstex_p driver of fig2dev ++ Copyright (C) 2006 Michael Pfeiffer -- p3fff@web.de ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ++ ++ (Author's note: the license is in the file gpl.txt, which is included ++ in the archive.) +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2mpdf/fig2mpdf transfig/fig2mpdf/fig2mpdf +--- transfig~/fig2mpdf/fig2mpdf ++++ transfig/fig2mpdf/fig2mpdf +@@ -0,0 +1,653 @@ ++#!/bin/sh ++ ++unset POSIXLY_CORRECT ++ ++gawk ' ++######################################################################### ++######################################################################### ++BEGIN { ++ ++ cmdGawk = "gawk"; ++ cmdCat = "cat"; ++ cmdLess = "less"; ++ cmdRm = "rm" ++ cmdMv = "mv" ++ cmdLatex = "latex"; ++ cmdPdftex = "pdflatex"; ++ cmdEpsToPdf = "epstopdf"; ++ cmdDvips = "dvips"; ++ cmdFig2dev = "fig2dev"; ++ cmdTouch = "touch"; ++ ++ szVersion = "1.1.2"; ++ iError = 0; ++ iGapWidth = 1; ++ ++ ++ # get the options ++ szOptString = "&l%e&m$p%i%I$s$H$g%G%v%V%d"; ++ getopt(szOptString); ++ ++ if (aOptions["d"]) ++ { ++ aOptions["v"] = "-"; ++ for (iI = 0; iI < ARGC; iI++) ++ printf("ARGV[%d]=%s\n", iI, ARGV[iI]); ++ ++ iDim = split(szOptString, aOpts, "[$%&]"); ++ for (iI = 2; iI <= iDim; iI++) ++ debug("aOptions[%s] = >%s<\n", aOpts[iI], aOptions[aOpts[iI]]); ++ } ++ ++ ++ ++ if (aOptions["V"] != "") ++ { ++ printf("fig2mpdf: version %s\n", szVersion); ++ iError = 1; ++ exit(0); ++ } ++ ++ szTmpPrefix = "_fig2mpdf" ++ ++ iLine = -1; ++ iInString = 0; ++ iDepths = 1; ++ ++ iInvalidDepth = -2 ++ iAdminDepth = 2000 ++ ++ szBase = ARGV[1]; ++ szOrigFile = ARGV[1]; ++ szOrigPath = ARGV[1]; ++ ++ # set default switch state ++ iDoMultiLayer = 0; ++ iDoLatex = 0; ++ iDoPdftex = 1; ++ iIncludeLowestRange = 1; ++ ++ # set iDoLatex and iDoMultiLayer concerning the given suffix ++ match(szBase, /\.[^\.\/]+$/); ++ if (RLENGTH != -1) ++ { ++ szSuffix = substr(szBase, RSTART); ++ if (szSuffix == ".lfig") ++ iDoLatex = 1; ++ else if (szSuffix == ".mfig") ++ iDoMultiLayer = 1; ++ else if ((szSuffix == ".mlfig") || (szSuffix == ".lmfig")) ++ { ++ iDoLatex = 1; ++ iDoMultiLayer = 1; ++ } ++ } ++ ++ ################################ ++ # evalutate options ++ ++ # set toggle latex ++ if (aOptions["l"] == "-") ++ iDoLatex = 1; ++ if (aOptions["l"] == "+") ++ iDoLatex = 0; ++ ++ # set multilayer flag ++ if (aOptions["m"] == "-") ++ iDoMultiLayer = 1; ++ if (aOptions["m"] == "+") ++ iDoMultiLayer = 0; ++ ++ # set toggle pdftex ++ if (aOptions["e"] == "-") ++ iDoPdftex = 0; ++ ++ # evaluate do not include lowest layer in all figs ++ iIncludeLowestRange = (aOptions["i"] == "-"); ++ ++ # evaluate include all lower ranges in the sub figs ++ iIncludeAllLowerRanges = (aOptions["I"] != "-"); ++ ++ # check consistencies ++ # if there are ranges given -> do multilayer ++ if (aOptions["p"] != "") ++ iDoMultiLayer = 1; ++ ++ ++ if (aOptions["g"] != "") ++ { ++ if ( ! match (aOptions["g"], /^[0-9]+$/)) ++ usage(); ++ ++ iGapWidth = aOptions["g"] + 1; ++ } ++ ++ # get the basename of the source ++ gsub(/\.[^\/]+$/, "", szBase); ++ gsub(/^.*\//, "", szBase); ++ ++ # get the path to the original ++ gsub(/[^\/]+$/, "", szOrigPath); ++} ++######################################################################### ++######################################################################### ++ ++( iInString != 0) { ++ aszLine[iLine] = sprintf("%s\n%s", aszLine[iLine], $0); ++ iInString = (match($0, "\\\\001$") == 0); ++ iSubLine++; ++ next; ++} ++ ++/^[135][ ]/ { ++ iCmd = $1; ++ iSubCmd = -1; ++ iSubLine = 0; ++ aiDepth[++iLine] = fnGetDepth($1); ++ aszLine[iLine] = $0; ++ next; ++} ++ ++/^[2][ ]/ { ++ iCmd = $1; ++ iSubCmd = $2; ++ iSubLine = 0; ++ aiDepth[++iLine] = fnGetDepth($1); ++ aszLine[iLine] = $0; ++ next; ++} ++ ++ ++/^[4][ ]/ { ++ iCmd = $1; ++ iSubCmd = $2; ++ iSubLine = 0; ++ aiDepth[++iLine] = fnGetDepth($1); ++ aszLine[iLine] = $0; ++ iInString = (match($0, "\\\\001$") == 0); ++ next; ++} ++ ++/^(6[ ])|(-6)/ { ++ iCmd = $1; ++ iSubCmd = -1; ++ iSubLine = 0; ++ next; ++} ++ ++/^[^ ]/ { ++ iCmd = -1; ++ aiDepth[++iLine] = fnGetDepth("A"); ++ iSubLine = 0; ++ aszLine[iLine] = $0; ++ next; ++} ++ ++/^[ ]/ { ++ iSubLine++; ++ if ((iCmd == 2) && (iSubCmd == 5) && (iSubLine == 1)) ++ { ++ if (match($0, "^\t[01] ")) ++ { ++ szFileName = substr($0, RSTART + RLENGTH); ++ if ( ! match(szFileName, /^\//)) ++ szFileName = sprintf("%s%s", szOrigPath, szFileName); ++ aszLine[iLine] = sprintf("%s\n\t%s %s", aszLine[iLine], $1, szFileName); ++ } ++ else ++ aszLine[iLine] = sprintf("%s\n%s", aszLine[iLine], $0); ++ } ++ else ++ aszLine[iLine] = sprintf("%s\n%s", aszLine[iLine], $0); ++} ++ ++ ++END { ++ iLine++; ++ iLowestLayer = 0; ++ iFirstRange = 0; ++ ++ if (iError == 0) ++ { ++ ++ ++ if (iDoMultiLayer) ++ { ++ asort(aiDepths, aiSortedDepth); ++ ++ # check for ranges as options ++ if (aOptions["p"] != "") ++ { ++ # we have explicit ranges ++ gsub(/-/, ":", aOptions["p"]); ++ iRanges = split(aOptions["p"], aszRanges, ","); ++ } ++ else ++ { ++ if (iDepths < 4) ++ { ++ iRanges = 1; ++ aszRanges[1] = "1:999"; ++ } ++ else ++ { ++ iRanges = 0; ++ iLastRange = aiSortedDepth[iDepths - 2] + 0; ++ iRangeStart = iLastRange; ++ for (iI = iDepths - 3; iI > 0; iI--) ++ { ++ aiSortedDepth[iI] += 0; ++ if ((aiSortedDepth[iI] < iLastRange - iGapWidth) || (iI == 1)) ++ { ++ if (aiSortedDepth[iI] >= iLastRange - iGapWidth) ++ iLastRange = aiSortedDepth[iI]; ++ ++ if (iLastRange != iRangeStart) ++ aszRanges[++iRanges] = sprintf("%d:%d", iLastRange, iRangeStart); ++ else ++ aszRanges[++iRanges] = sprintf("%d", iRangeStart); ++ iRangeStart = aiSortedDepth[iI]; ++ ++ if ((iI == 1) && (aiSortedDepth[iI] < iLastRange - iGapWidth)) ++ aszRanges[++iRanges] = sprintf("%d", aiSortedDepth[iI]); ++ } ++ iLastRange = aiSortedDepth[iI]; ++ } ++ } ++ } ++ ++ ++ # check for a multilayer file with only one range ++ if ((iRanges == 1) && iIncludeLowestRange) ++ { ++ iIncludeLowestRange = 0; ++ } ++ ++ szInitRangeList = " -D "; ++ szSep = ""; ++ ++ if (iIncludeLowestRange) ++ { ++ szInitRangeList = sprintf("%s+%s", szInitRangeList, aszRanges[1]); ++ szSep = ","; ++ } ++ szRangeList = szInitRangeList; ++ ++ # step through the ranges ++ for (iI = iIncludeLowestRange; iI < iRanges; iI++) ++ { ++ szFileBase = sprintf("%s-%d", szBase, iI - iIncludeLowestRange); ++ ++ if (aOptions["I"]) ++ { ++ szRangeList = sprintf("%s%s+%s", szRangeList, szSep, aszRanges[iI + 1]); ++ szSep = ","; ++ } ++ else ++ szRangeList = sprintf("%s%s+%s", szInitRangeList, szSep, aszRanges[iI + 1]); ++ ++ ++ if (iDoLatex) ++ szTargetFile = fnDoTexFig(szFileBase, szOrigFile, szRangeList, (iDoPdftex != 0)); ++ else ++ szTargetFile = fnDoNormalFig(szFileBase, szOrigFile, szRangeList, (iDoPdftex != 0)); ++ ++ ++ if (aOptions["G"]) ++ { ++ match(szTargetFile, /\.[^.]*$/); ++ szCommand = sprintf("%s %s %s.page%d%s", cmdMv, szTargetFile, szBase, iI - iIncludeLowestRange, substr(szTargetFile, RSTART, RLENGTH)); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ } ++ } ++ else ++ { ++ szRangeList = ""; ++ ++ if (iDoLatex) ++ szTargetFile = fnDoTexFig(szBase, szOrigFile, szRangeList, (iDoPdftex != 0)); ++ else ++ szTargetFile = fnDoNormalFig(szBase, szOrigFile, szRangeList, (iDoPdftex != 0)); ++ } ++ } ++} ++ ++ ++ ++######################################################################### ++######################################################################### ++function debug(str, arg0, arg1, arg2, arg3, arg4) ++{ ++ if (aOptions["v"]) ++ printf (str, arg0, arg1, arg2, arg3, arg4); ++} ++ ++######################################################################### ++######################################################################### ++function fnGetDepth (iControl) ++{ ++ ++ if (iControl == 1) ++ { ++ iReturn = sprintf("%04d", $7); ++ } ++ else if (iControl == 2) ++ { ++ iReturn = sprintf("%04d", $7); ++ } ++ else if (iControl == 3) ++ { ++ iReturn = sprintf("%04d", $7); ++ } ++ else if (iControl == 4) ++ { ++ iReturn = sprintf("%04d", $4); ++ } ++ else if (iControl == 5) ++ { ++ iReturn = sprintf("%04d", $7); ++ } ++ else if ((iControl == 6) || (iControl == -6)) ++ { ++ iReturn = sprintf("%04d", iInvalidDepth); ++ } ++ else ++ { ++ iReturn = sprintf("%04d", iAdminDepth); ++ } ++ ++ if (iReturn >= 0) ++ { ++ if (ahDepths[iReturn] == 0) ++ { ++ ahDepths[iReturn] = 1; ++ aiDepths[iDepths++] = iReturn; ++ } ++ } ++ ++ return (iReturn); ++ ++} ++ ++######################################################################### ++######################################################################### ++function fnDoNormalFig(szFileNameBase, szFigFile, szRangeList, iPdf, ++ szEpsFile, szPdfFile, szTargetFile, szCommand) ++{ ++ ++ debug("FileNameBase >%s< FigFile >%s< Pdf:%d\n", szFileNameBase, szFigFile, iPdf); ++ ++ if (iPdf) ++ szEpsFile = sprintf("%s%s.eps", szTmpPrefix, szFileNameBase); ++ else ++ { ++ szEpsFile = sprintf("%s.eps", szFileNameBase); ++ szTargetFile = szEpsFile; ++ } ++ ++ szCommand = sprintf("%s -L eps %s %s %s 2> /dev/null", cmdFig2dev, szRangeList, szFigFile, szEpsFile); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ ++ if (iPdf) ++ { ++ szPdfFile = sprintf("%s.pdf", szFileNameBase); ++ szTargetFile = szPdfFile; ++ szCommand = sprintf("%s --outfile=%s %s", cmdEpsToPdf, szPdfFile, szEpsFile); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ ++ ++ if ( ! aOptions["d"]) ++ { ++ szCommand = sprintf("%s -f %s", cmdRm, szEpsFile); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ } ++ ++ ++ return (szTargetFile); ++} ++ ++ ++######################################################################### ++######################################################################### ++function fnDoTexFig(szFileNameBase, szFigFile, szRangeList, iPdf, ++ szEpsFile, szPdfFile, szTexDoc, szTexPdf, szTexLog, szTexAux, szTexInp, szTmpPs, szTmpPdf, szTexSiz, szTmpEps, szCommand, szHeader) ++{ ++ ++ debug("FileNameBase >%s< FigFile >%s< Pdf:%d\n", szFileNameBase, szFigFile, iPdf); ++ ++ szEpsFile = sprintf("%s.eps", szFileNameBase); ++ szPdfFile = sprintf("%s.pdf", szFileNameBase); ++ szTexDoc = sprintf("%s%s_doc.tex", szTmpPrefix, szFileNameBase); ++ szTexPdf = sprintf("%s%s_doc.pdf", szTmpPrefix, szFileNameBase); ++ szTexDvi = sprintf("%s%s_doc.dvi", szTmpPrefix, szFileNameBase); ++ szTexLog = sprintf("%s%s_doc.log", szTmpPrefix, szFileNameBase); ++ szTexAux = sprintf("%s%s_doc.aux", szTmpPrefix, szFileNameBase); ++ szTexInpPref = sprintf("%s%s_inp", szTmpPrefix, szFileNameBase); ++ szTexInp = sprintf("%s.tex", szTexInpPref); ++ szTexCreator = sprintf("%s.create", szTexInpPref); ++ szTexSiz = sprintf("%s.size", szTexInpPref); ++ ++ if (iPdf) ++ szCommand = sprintf("%s -L pdftex_p %s -p %s %s %s", cmdFig2dev, szRangeList, szTexInpPref, szFigFile, szTexInp); ++ else ++ szCommand = sprintf("%s -L pstex_p %s -p %s %s %s", cmdFig2dev, szRangeList, szTexInpPref, szFigFile, szTexInp); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ ++ szCommand = sprintf("./%s", szTexCreator); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ ++ # check if there is an own hederfile to include ++ if (aOptions["s"] == "") ++ aOptions["s"] = "times"; ++ ++ if (aOptions["H"] == "") ++ { ++ szHeader = sprintf("\\documentclass{article}\n\ ++\\usepackage{german,amssymb,amsmath}\n\ ++\\usepackage{%s}", aOptions["s"]); ++ } ++ else ++ szHeader = sprintf("\\input{%s}\n", aOptions["H"]); ++ ++ szHeader = sprintf("%s\n\ ++\\usepackage{color}\n\ ++\\usepackage{ifpdf}\n\ ++\\setlength{\\textwidth}{100cm}\n\ ++\\setlength{\\textheight}{100cm}\n\ ++\\setlength{\\topmargin}{-1in}\n\ ++\\setlength{\\headsep}{0pt}\n\ ++\\setlength{\\headheight}{0pt}\n\ ++\\setlength{\\oddsidemargin}{-1in}\n\ ++\\parindent=0cm\n\ ++\\ifpdf\n\ ++\\usepackage[pdftex]{graphicx}\n\ ++\\DeclareGraphicsExtensions{.pdf,.png,.jpg}\n\ ++\\usepackage{epsfig}\n\ ++\\input{%s}\n\ ++\\else\n\ ++\\usepackage{graphicx}\n\ ++\\usepackage{epsfig}\n\ ++\\fi\n\ ++", szHeader, szTexSiz); ++ ++ szCommand = sprintf("%s > %s << EOF\n\ ++%s\\begin{document}\n\ ++\\pagestyle{empty}\n\ ++\\input{%s}\n\ ++\\end{document}\n\ ++EOF", cmdCat, szTexDoc, szHeader, szTexInp); ++ if (aOptions["d"] != "") ++ debug("%s\n", szCommand); ++ system(szCommand); ++ ++ if (iPdf) ++ { ++ ++ szCommand = sprintf("%s -interaction batchmode %s", cmdPdftex, szTexDoc); ++ debug("%s\n", szCommand); ++ iReturn = system(szCommand); ++ ++ if (iReturn) ++ { ++ szCommand = sprintf("%s %s | %s +G", cmdCat, szTexLog, cmdLess); ++ system (szCommand); ++ } ++ else ++ { ++ szCommand = sprintf("%s %s %s", cmdMv, szTexPdf, szPdfFile); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ ++ } ++ else ++ { ++ szCommand = sprintf("%s -interaction batchmode %s", cmdLatex, szTexDoc); ++ debug("%s\n", szCommand); ++ iReturn = system(szCommand); ++ if (iReturn) ++ { ++ szCommand = sprintf("%s %s | %s +G", cmdCat, szTexLog, cmdLess); ++ system (szCommand); ++ } ++ else ++ { ++ szCommand = sprintf("%s -q -E %s -o %s 2>&1 > /dev/null", cmdDvips, szTexDvi, szEpsFile); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ } ++ ++ if ( ! aOptions["d"]) ++ { ++ szCommand = sprintf("./%s -r", szTexCreator); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ ++ if ( ! aOptions["d"]) ++ { ++ szCommand = sprintf("%s -f %s %s %s %s %s %s %s", cmdRm, szTexDoc, szTexLog, szTexAux, szTexDvi, szTexInp, szTexCreator, szTexPdf); ++ debug("%s\n", szCommand); ++ system(szCommand); ++ } ++ ++ if (iPdf) ++ return (szPdfFile); ++ else ++ return (szEpsFile); ++} ++ ++ ++######################################################################### ++######################################################################### ++function getopt(sOptions, n, m, fHuntParam, iSearchMinus, iSPos, iCLen, iHuntSwitches, szSwChar, szOptChar) { ++# Options: Flagoptions: %f ++# Parameter: $p ++ ++ n = 1; # index in argv ++ m = 1; # processed entries in argv finally it points to the firs$ ++ iSearchMinus = 1; # indicate that a switch leading sign minus is expected ++ ++ # check for initial -- to separate the gawk switches from the script switches ++ if (ARGV[n] == "--") ++ n++; ++ ++ ++ while (n < ARGC) ++ { ++ iHuntSwitches = 0; ++ iCLen = length(ARGV[n]); ++ ++ szSwChar = substr(ARGV[n], 1, 1); ++ if ((szSwChar == "-") || (szSwChar == "+")) ++ { ++ if ((iSearchMinus == 0) || fHuntParam) ++ usage(); ++ iHuntSwitches = 1; ++ iSPos = 2; ++ fHuntParam = 0; ++ } ++ else ++ { ++ iSPos = 1; ++ ++ if (fHuntParam == 0) ++ iSearchMinus = 0; ++ } ++ ++ while (iSPos <= iCLen) ++ { ++ if (iHuntSwitches) ++ { ++ szOptChar = substr(ARGV[n], iSPos, 1); ++ iOPos = index(sOptions, szOptChar); ++ if (iOPos == 0) ++ { ++ printf("unknown option \"%s\"\n", szOptChar); ++ usage(); ++ } ++ if ((substr(sOptions, iOPos - 1, 1) == "&") || ((substr(sOptions, iOPos - 1, 1) == "%") && (szSwChar == "-"))) ++ { ++ aOptions[szOptChar] = szSwChar; ++ iSPos = iSPos + 1; ++ } ++ else if ((substr(sOptions, iOPos - 1, 1) == "$") && (szSwChar == "-")) ++ { ++ fHuntParam = 1; ++ iHuntSwitches = 0; ++ iSPos = iSPos + 1; ++ } ++ else ++ usage(); ++ ++ } ++ else if (fHuntParam) ++ { ++ fHuntParam = 0; ++ aOptions[szOptChar] = substr(ARGV[n], iSPos, iCLen + 1 - iSPos); ++ iSPos = iCLen + 1; ++ } ++ else ++ { ++ ARGV[m++] = ARGV[n]; ++ iSPos = iCLen + 1; ++ } ++ } ++ n = n + 1; ++ } ++ ARGC = m; ++} ++ ++ ++######################################################################### ++######################################################################### ++function usage() { ++ print "usage: fig2mpdf [-|+lm] [-eiIGvV] [-p <ranges>] [-g <gapwidth>] [-s <style>] [-H <headerfile>] file\n\ ++\n\ ++ -|+l set|reset latex call\n\ ++ -e create an eps file instead of a pdf\n\ ++ -|+m set|reset multilayer creation\n\ ++ -p <ranges> colon separated list of layer ranges a-b,c,d-e,...\n\ ++ -i do include the deepest range in all figures\n\ ++ (the one with the higest level number)\n\ ++ -I include all lower ranges (pyramide mode)\n\ ++ -g <gap> set layer gapwidth for automatically detecting ranges (default:0)\n\ ++ -s <style> replace \\usepackage{times} by \\usepackage{<style>} in the latex commands\n\ ++ -H <header> use file <header> for creating tex documents (only\n\ ++ \\begin{document}...\\end{document} is set by fig2mpdf)\n\ ++ -G name multilayer files in PGF file name format <name>.page<no>.<ext>\n\ ++ -v be verbose\n\ ++ -V print out the version of fig2mpdf\n"; ++ exit 1; ++} ++' -- $* ++ +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2mpdf/fig2mpdf.1 transfig/fig2mpdf/fig2mpdf.1 +--- transfig~/fig2mpdf/fig2mpdf.1 ++++ transfig/fig2mpdf/fig2mpdf.1 +@@ -0,0 +1,208 @@ ++.TH fig2mpdf 1 "Jun 2006" "" "Including xfig figures into LaTeX documents" ++.SH NAME ++fig2mpdf \- creation of multilayer pdf or eps figures from fig files using latex for typesetting ++.SH SYNOPSIS ++.B fig2mpdf ++[\fIOPTION\fR]... \fIFILE\fR ++.SH DESCRIPTION ++.PP ++This tool can create pdf or eps figures using fig files as source. For beamer ++presentations, for example, you can use the multilayer mode to create ++multiple figures that can be overlayed to get a dynamic figure. For ++proper appearance you can use latex to typeset some or all texts, ++possibly containing formulas. ++ ++The default interpretation of the given fig \fIFILE\fR depends on its suffix. ++.TP ++\fIfig\fR ++Normal conversion of a fig file. All texts are interpreted as postscript ++texts and all elements of the figure are included in the resulting figure. ++.TP ++\fIlfig\fR ++LaTeX interpretation of the file. All texts of the input file that have the ++special bit set are typeset by pdflatex resp. latex (see: Option \fB\-|+l\fR). ++.TP ++\fImfig\fR ++Multilayer file interpretation. Depending on the used depths of the ++figure it is split into multiple parts. For each part an output file is ++created (see: section \fBMultiLayerOutput\fR). ++.TP ++\fImlfig\fR or \fIlmfig\fR ++Combination of multilayer and LaTeX interpretation of the input (see: Suffix ++\fIlfig\fR and \fImfig\fR). ++.PP ++The default interpretation of the input can be changed by using the options below. ++.SH OPTIONS ++.PP ++.TP ++\fB\-e\fR ++produce an eps output file. Instead of creating a pdf file (the default) ++an eps figure is produced. ++.TP ++\fB\-|+l\fR ++force calling (pdf)latex (-) or do not use (pdf)latex (+) for ++typesetting the text marked with the special flag. With this option you ++can change the default behavior given by the input file suffix. ++.TP ++\fB\-|+m\fR ++force set (-) or unset (+) the multilayer interpretation (see: ++\fBMultiLayerOutput\fR below) which was previously set by the input ++file suffix. ++.TP ++\fB\-p\fR \fIranges\fR ++explicitly set the ranges of depths for splitting the input figure in ++multilayer mode. \fIranges\fR is a colon separated list of ranges of ++the form \fIupper-lower\fR or \fIdepth\fR where \fIupper\fR is the ++top and \fIlower\fR the bottom depth in the range. If you use the ++\fIdepth\fR form the range consist of just that depth. ++.TP ++\fB\-i\fR ++include the the bottommost range (that is, the one with the highest depth) into ++all output figures. This is for compatibility to older versions of this ++tool. ++.TP ++\fB\-I\fR ++turn on pyramid mode. The figure of a corresponding range in multilayer ++mode includes all lower ranges too. ++.TP ++\fB\-g\fR \fIgapwidth\fR ++set the allowed gapwidth between two used depths to decide if these ++depths should be grouped together in one range. With this option you get ++more flexibility to insert objects with new depths. The default width is ++zero (no gap = consecutively numbered depths are grouped together). ++.TP ++\fB\-s\fR \fIstyle\fR ++replace the default style for selecting a font family in LaTeX mode. ++If this option is omitted the style `times' is set by default. ++.TP ++\fB\-H\fR \fIheader\fR ++replace the default header sequence for creating temporary ++LaTeX documents in LaTeX mode. To get maximum flexibility you can ++set the entire document header in the file \fIheader\fR (see: ++\fBCustomized Headers\fR below). ++.TP ++\fB\-G\fR ++in multilayer mode change the default output file pattern to the PDF ++format which is <name>.page<no>.<ext> ++.TP ++\fB\-v\fR ++be verbose and print out all executed commands ++.TP ++\fB\-V\fR ++print out the version of \fBfig2mpdf\fR ++.PP ++.SH "MultiLayerOutput" ++In xfig you can assign an individual depth to all objects of the ++figure. These depths are normally used to determine the order of ++printing the objects. \fBfig2mpdf\fR uses these depths to group the ++objects into ranges in automatic mode (if the ranges option is ++omitted). In the list of used depths, consecutively numbered depths are ++grouped into one range. That is, all gaps between used depths are used ++to logically split the figure. With \fB\-g\fR you can set the ++gapwidth which doesn't split the figure (default: zero). ++.PP ++The resulting list of ranges determines the number of output files. In ++default mode all objects with depths assigned to one range are ++collected and put into the corresponding output file. The contents of ++the output files can be changed with the two Options \fB\-i\fR and ++\fB\-I\fR. ++.PP ++The \fB\-i\fR option reduces the number of output files by one. The ++bottommost range, that is the range which consist of the highest depths ++of the figure, is included into all output files. ++.PP ++In pyramid mode, activated by the option \fB\-I\fR, the output files ++contain additionally all lower ranges. With this mode you can ++get stand alone figures that don't have to be overlayed to have ++meaningful content. ++.PP ++\fBExample 1\fR ++.PD 0 ++.PP ++Assume that you have a fig file \fIfoo.fig\fR which contains the three ranges ++.IR "230-233", ++.IR "455-460" ++and ++.IR "499-500". ++.PD ++.PP ++With no options set you get three output files, one per range. But if you ++set the \fB\-i\fR option you get the following two files where the ++bottommost range is included in both of the files: ++.PD 0 ++.PP ++ \fIfoo-0.pdf\fR with ranges \fI455-460\fR and \fI499-500\fR ++.PP ++ \fIfoo-1.pdf\fR with ranges \fI230-233\fR and \fI499-500\fR. ++.PD ++.PP ++\fBExample 2\fR ++.PD 0 ++.PP ++The pyramid mode, activated by the option \fB\-I\fR, will produce the ++following files from the source file of \fBExample 1\fR: ++.PP ++ \fIfoo-0.pdf\fR with ranges \fI499-500\fR ++.PP ++ \fIfoo-1.pdf\fR with ranges \fI455-460\fR and \fI499-500\fR ++.PP ++ \fIfoo-2.pdf\fR with ranges \fI230-233\fR, \fI455-460\fR and \fI499-500\fR. ++.PD ++.PP ++\fBExample 3\fR ++.PD 0 ++.PP ++If both options are set you will get just two files with the following ++contents: ++.PP ++ \fIfoo-0.pdf\fR with ranges \fI455-460\fR and \fI499-500\fR ++.PP ++ \fIfoo-1.pdf\fR with ranges \fI230-233\fR, \fI455-460\fR and \fI499-500\fR. ++.PD ++.PP ++.SH "Customized Headers" ++For various reasons you might want to change the standard latex generation, ++e.g., if you want to change the default font family. The following ++example represents a valid header file. ++ ++The usage of this example file changes the font family to sans serif ++and adds an additional search path for includegraphics to the `figures' ++subdirectory. ++ ++.PD 0 ++ \\documentclass{article} ++.PP ++ \\usepackage{german,amssymb,amsmath} ++.PP ++ \\renewcommand{\\familydefault}{\\sfdefault} ++.PP ++ \\AtBeginDocument{\\graphicspath{{figures/}}} ++.PD ++ ++The following packages are generally used: \fBcolor\fR, \fBgraphicx\fR and \fBepsfig\fR. ++.SH "Tex errors" ++Sometimes it might happen that latex generates an error while processing ++your special texts. To keep you informed about the occurrence of that ++error and about what has happened, in this case the log file is shown ++by invoking a less command. ++.SH "Files" ++In single layer mode for the resulting files the suffix fig is replaced ++by pdf (resp. eps) (i.e. foo.fig -> foo.pdf). ++.PP ++.PD 0 ++In multilayer mode the base name of the source fig files is extended ++by '-<range>' and the suffix is set to pdf (resp. eps). ++.PP ++(i.e., foo.fig -> foo-0.pdf, foo-1.pdf, foo-2.pdf, ... ++.PP ++ or foo.fig -> foo.page0.pdf, foo.page1.pdf, foo.page2.pdf, ... ++.PP ++ if the option \fB\-G\fR is set). ++.PD ++.SH "SEE ALSO" ++.IR xfig(1) ++.IR fig2dev(1) ++.IR gawk(1) ++.IR pdflatex(1) ++.IR latex(1) ++.IR dvips(1) diff --git a/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf.patch b/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf.patch new file mode 100644 index 000000000000..b04478f87970 --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-fig2mpdf.patch @@ -0,0 +1,522 @@ +=== modified file 'doc/fig2dev.1' +--- doc/fig2dev.1 2010-09-28 13:22:38 +0000 ++++ doc/fig2dev.1 2010-09-28 13:28:26 +0000 +@@ -53,8 +53,8 @@ + \fBbox, cgm, 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, pictex, png, ppm, ps, +-pstex, pstex_t, pstricks, ptk (Perl/tk), ++pcx, pdf, pdftex, pdftex_t, pdftex_p, pic, 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, tk (tcl/tk), tpic, xbm and +@@ -1062,6 +1062,62 @@ + font. Option 1 sets LaTeX font size only. Option 2 issues no font + commands at all. + ++.SH PSTEX_P and PDFTEX_P OPTIONS ++The \fBpstex_p\fR language has the same intention as ++the combination of \fBpstex\fR and \fBpstex_t\fR. ++The only reason to use \fBpstex_p\fR is that you have partially overlayed texts. ++\fBpstex_p\fR splits the Fig file concerning the depths of existing texts. Because ++of it's necessary to get the resulting size of the figure for the pdf document ++you have to specify the target document format ++(i.e. using \fBpstex_p\fR rsp. \fBpdftex_p\fR). ++.br ++Two files results by using this language: ++.br ++.HP +.3i ++1) A bash script for creating and removing the necessary graphics files. ++Extension: \fB.create\fR ++.HP +.3i ++.HP +.3i ++2) The latex code which includes all graphics files and special texts. Content is ++put to stdout. ++ ++.TP ++The \fBpstex_p\fR driver has the following special options: ++ ++.TP ++.B \-p basename ++specifies the basename of the files to be created (see (1) above). This option ++is mandatory. ++.TP ++.B "\-d dmag" ++Set a separate magnification for the length of line dashes to ++.I dmag. ++.TP ++.B \-E num ++Set encoding for latex text translation (0 no translation, 1 ISO-8859-1, 2 ISO-8859-2) ++.TP ++.B "\-l lwidth" ++Sets the threshold between LaTeX thin and thick lines to ++.I lwidth ++pixels. ++LaTeX supports only two different line width: \\thinlines and \\thicklines. ++Lines of width greater than ++.I lwidth ++pixels are drawn as \\thicklines. ++Also affects the size of dots in dotted line style. ++The default is 1. ++.TP ++.B \-v ++Verbose mode. ++.TP ++.B \-F ++Don't set the font face, series, and style; only set it's size and the ++baselineskip. By default, fig2dev sets all 5 font parameters when it ++puts some text. The disadvantage is that you can't set the font from your ++LaTeX document. With this option on, you can set the font from your LaTeX ++document (like "\fB\\sfshape \\input picture.eepic\fR"). ++ ++ + .SH TK and PTK OPTIONS (tcl/tk and Perl/tk) + .TP + .B -l dummy_arg +@@ -1107,6 +1163,13 @@ + .PP + Rotated text is only supported in the IBM-GL (HP/GL) and PostScript (including eps) + languages. ++.PP ++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 + .br +@@ -1187,3 +1250,7 @@ + The GBX (Gerber) driver was written by + .br + Edward Grace (ej.grace@imperial.ac.uk). ++.sp ++The PSTEX_P and PDFTEX_P drivers (overlayed LaTeX texts) was written by ++.br ++Michael Pfeiffer (p3f@gmx.de) + +=== modified file 'fig2dev/dev/genpstex.c' +--- fig2dev/dev/genpstex.c 2010-09-28 13:22:38 +0000 ++++ fig2dev/dev/genpstex.c 2010-09-28 13:26:39 +0000 +@@ -70,7 +70,307 @@ + genps_end (); + + static char pstex_file[1000] = ""; +- ++static int iObjectsRead = 0; ++static int iTextRead = 0; ++static int iObjectsFileNumber = 0; ++static int iStartDepth; ++static int iLastDepth; ++static FILE * ptCreateFile; ++static char szFileName[1000]; ++static int iLength; ++static int iPdfOutputs = 0; ++ ++#ifdef never ++static double unitlength; ++static double dash_mag = 1.0; ++ ++static int (*translate_coordinates)() = NULL; ++static int (*translate_coordinates_d)() = NULL; ++#else ++extern double unitlength; ++extern double dash_mag; ++ ++extern int (*translate_coordinates)(); ++extern int (*translate_coordinates_d)(); ++#endif ++ ++#define TOP 840 ++#define SWAP(x,y) {tmp=x; x=y; y=tmp;} ++#define TRANS(x,y) (*translate_coordinates)(&x,&y) ++#define TRANS2(x1,y1,x2,y2) (*translate_coordinates)(&x1,&y1); \ ++ (*translate_coordinates)(&x2,&y2) ++#define TRANSD(x,y) (*translate_coordinates_d)(&x,&y) ++ ++static void genpstex_p_finalize_objects(int depth); ++ ++/************************************************************************* ++ *************************************************************************/ ++static ++translate2(xp, yp) ++ int *xp, *yp; ++{ ++ *xp = *xp + 1; ++ *yp = (double)(TOP - *yp -1); ++ } ++ ++static ++translate1_d(xp, yp) ++ double *xp, *yp; ++{ ++ *xp = *xp + 1.0; ++ *yp = *yp + 1.0; ++ } ++ ++static ++translate2_d(xp, yp) ++ double *xp, *yp; ++{ ++ *xp = *xp + 1.0; ++ *yp = (double)TOP - *yp -1.0; ++ } ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_option(opt, optarg) ++char opt, *optarg; ++{ ++ if (opt == 'p') ++ { ++ strcpy(pstex_file, optarg); ++ } ++ else ++ genlatex_option(opt, optarg); ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_start(objects) ++ F_compound *objects; ++{ ++ int tmp; ++ struct stat tStat; ++ long lUnitLength; ++ ++ if (*pstex_file == '\0') ++ { ++ put_msg("Argument -p is mandatory to pstex_p."); ++ exit(1); ++ } ++ ++ strncpy(szFileName, pstex_file, 900); ++ iLength = strlen(szFileName); ++ ++ sprintf(szFileName + iLength, ".create"); ++ ptCreateFile = fopen (szFileName, "wb"); ++ ++ if ( ! ptCreateFile) ++ { ++ put_msg("Couldn't open %s for writing", szFileName); ++ exit(1); ++ } ++ 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, "while getopts \"r\" Option\n"); ++ fprintf(ptCreateFile, "do\n"); ++ fprintf(ptCreateFile, " case $Option in\n"); ++ fprintf(ptCreateFile, " r) iOptRemove=1;;\n"); ++ fprintf(ptCreateFile, " *) echo \"illegal option -$Option\"\n"); ++ fprintf(ptCreateFile, " esac\n"); ++ fprintf(ptCreateFile, "done\n"); ++ fprintf(ptCreateFile, "shift $(($OPTIND - 1))\n"); ++ ++ texfontsizes[0] = texfontsizes[1] = ++ TEXFONTSIZE(font_size != 0.0? font_size : DEFAULT_FONT_SIZE); ++ ++ unitlength = mag/ppi; ++ dash_mag /= unitlength*80.0; ++ ++ translate_coordinates = translate2; ++ translate_coordinates_d = translate2_d; ++ ++ TRANS2(llx, lly, urx, ury); ++ if (llx > urx) SWAP(llx, urx) ++ if (lly > ury) SWAP(lly, ury) ++ ++ /* LaTeX start */ ++ ++ /* print any whole-figure comments prefixed with "%" */ ++ if (objects->comments) { ++ fprintf(tfp,"%%\n"); ++ print_comments("% ",objects->comments, ""); ++ fprintf(tfp,"%%\n"); ++ } ++ ++ lUnitLength = (long) (round(4736286.72*unitlength)); ++ fprintf(tfp, "\\setlength{\\unitlength}{%lisp}%%\n", ++ lUnitLength); ++ /* define the SetFigFont macro */ ++ define_setfigfont(tfp); ++ ++ sprintf(szFileName + iLength, ".size"); ++ fprintf(ptCreateFile, "if [ \"$iOptRemove\" == \"\" ]; then\n"); ++ if (iPdfOutputs) ++ fprintf(ptCreateFile, " echo \"\\setlength\\pdfpagewidth{%3.2fpt}\\setlength\\pdfpageheight{%3.2fpt}\" > %s\n", ++ (float) lUnitLength / 65536 * (urx - llx), (float) lUnitLength / 65536 * (ury - lly), szFileName); ++ else ++ fprintf(ptCreateFile, "echo -n\"\" > %s\n", szFileName); ++ fprintf(ptCreateFile, "else\n rm -f %s\nfi\n", szFileName); ++} ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpdftex_p_start(objects) ++ F_compound *objects; ++{ ++ iPdfOutputs = 1; ++ genpstex_p_start(objects); ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++int genpstex_p_end() ++{ ++ if (iTextRead) ++ { ++ fprintf(tfp, "\\end{picture}%%\n"); ++ iTextRead = 0; ++ } ++ if (iObjectsRead) ++ { ++ genpstex_p_finalize_objects(iLastDepth); ++ iObjectsRead = 0; ++ } ++ ++ /* LaTeX ending */ ++ fprintf(tfp, "\\begin{picture}(%d,%d)\n", urx-llx, ury-lly); ++ fprintf(tfp, "\\end{picture}%%\n"); ++ ++ fclose(ptCreateFile); ++ ++ /* all ok */ ++ return 0; ++} ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_finalize_objects(depth) ++int depth; ++{ ++ char szFileName[1000]; ++ int iLength; ++ ++ strncpy(szFileName, pstex_file, 900); ++ iLength = strlen(szFileName); ++ ++ ++ sprintf(szFileName + iLength, "%03d", iObjectsFileNumber++); ++ 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 --outfile %s.pdf\n", szFileName, szFileName); ++ } ++ else ++ fprintf(ptCreateFile, "%s -L pstex -D +%d:%d %s %s.eps\n", prog, depth, iStartDepth, from, szFileName); ++ fprintf(ptCreateFile, "else\n rm -f %s.", szFileName); ++ if (iPdfOutputs) ++ fprintf(ptCreateFile, "pdf"); ++ else ++ fprintf(ptCreateFile, "eps"); ++ fprintf(ptCreateFile, "\nfi\n"); ++ ++ fprintf(tfp, "\\begin{picture}(0,0)%%\n"); ++/* newer includegraphics directive suggested by Stephen Harker 1/13/99 */ ++#if defined(LATEX2E_GRAPHICS) ++# if defined(EPSFIG) ++ fprintf(tfp, "\\epsfig{file=%s.eps}%%\n",szFileName); ++# else ++ fprintf(tfp, "\\includegraphics{%s}%%\n",szFileName); ++# endif ++#else ++ fprintf(tfp, "\\special{psfile=%s.eps}%%\n",szFileName); ++#endif ++ fprintf(tfp, "\\end{picture}%%\n"); ++} ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_object(depth) ++int depth; ++{ ++ if (iTextRead) ++ { ++ fprintf(tfp, "\\end{picture}%%\n"); ++ iTextRead = 0; ++ } ++ if (iObjectsRead == 0) ++ { ++ iStartDepth = depth; ++ iObjectsRead = 1; ++ } ++ iLastDepth = depth; ++ ++} ++ ++void genpstex_p_arc(obj) ++F_arc *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++ ++void genpstex_p_ellipse(obj) ++F_ellipse *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++void genpstex_p_line(obj) ++F_line *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++void genpstex_p_spline(obj) ++F_spline *obj; ++{ ++ genpstex_p_object(obj->depth); ++} ++ ++ ++ ++/************************************************************************* ++ *************************************************************************/ ++void genpstex_p_text(t) ++F_text *t; ++{ ++ ++ if (!special_text(t)) ++ genpstex_p_object(t->depth); ++ else ++ { ++ if (iObjectsRead) ++ { ++ genpstex_p_finalize_objects(iLastDepth); ++ iObjectsRead = 0; ++ } ++ if (iTextRead == 0) ++ { ++ fprintf(tfp, "\\begin{picture}(0,0)(%d,%d)\n", llx, lly); ++ iTextRead = 1; ++ } ++ genlatex_text(t); ++ } ++ ++} ++ ++/************************************************************************* ++ *************************************************************************/ + void genpstex_t_option(opt, optarg) + char opt, *optarg; + { +@@ -112,6 +412,8 @@ + else genlatex_text(t); + } + ++/************************************************************************* ++ *************************************************************************/ + void genpstex_text(t) + F_text *t; + { +@@ -128,6 +430,32 @@ + genlatex_option(opt, optarg); + } + ++struct driver dev_pstex_p = { ++ genpstex_p_option, ++ genpstex_p_start, ++ gendev_null, ++ genpstex_p_arc, ++ genpstex_p_ellipse, ++ genpstex_p_line, ++ genpstex_p_spline, ++ genpstex_p_text, ++ genpstex_p_end, ++ INCLUDE_TEXT ++}; ++ ++struct driver dev_pdftex_p = { ++ genpstex_p_option, ++ genpdftex_p_start, ++ gendev_null, ++ genpstex_p_arc, ++ genpstex_p_ellipse, ++ genpstex_p_line, ++ genpstex_p_spline, ++ genpstex_p_text, ++ genpstex_p_end, ++ INCLUDE_TEXT ++}; ++ + struct driver dev_pstex_t = { + genpstex_t_option, + genpstex_t_start, + +=== modified file 'fig2dev/drivers.h' +--- fig2dev/drivers.h 2010-09-28 13:22:38 +0000 ++++ fig2dev/drivers.h 2010-09-28 13:29:46 +0000 +@@ -30,8 +30,10 @@ + extern struct driver dev_pdf; + extern struct driver dev_pdftex; + extern struct driver dev_pdftex_t; ++extern struct driver dev_pdftex_p; + extern struct driver dev_pstex; + extern struct driver dev_pstex_t; ++extern struct driver dev_pstex_p; + extern struct driver dev_pstricks; + extern struct driver dev_textyl; + extern struct driver dev_tk; +@@ -75,6 +77,7 @@ + {"pdf", &dev_pdf}, + {"pdftex", &dev_pdftex}, + {"pdftex_t", &dev_pdftex_t}, ++ {"pdftex_p", &dev_pdftex_p}, + {"pic", &dev_pic}, + {"pictex", &dev_pictex}, + {"png", &dev_bitmaps}, +@@ -82,6 +85,7 @@ + {"ps", &dev_ps}, + {"pstex", &dev_pstex}, + {"pstex_t", &dev_pstex_t}, ++ {"pstex_p", &dev_pstex_p}, + {"pstricks", &dev_pstricks}, + {"ptk", &dev_ptk}, + {"shape", &dev_shape}, + +=== modified file 'fig2dev/fig2dev.c' +--- fig2dev/fig2dev.c 2010-09-28 13:22:38 +0000 ++++ fig2dev/fig2dev.c 2010-09-28 13:26:39 +0000 +@@ -649,6 +649,18 @@ + #endif /* NFSS */ + printf(" -p name name of the PostScript file to be overlaid\n"); + ++ printf("PSTEX_P and PDFTEX_P Options:\n"); ++ printf(" -p name basename of the files to be created\n"); ++#ifdef NFSS ++ printf(" -F don't set font family/series/shape, so you can\n"); ++ printf(" set it from latex\n"); ++#endif /* NFSS */ ++ printf(" -d dmag set separate magnification for length of line dashes to dmag\n"); ++ printf(" -E num set encoding for text translation (0 no translation,\n"); ++ printf(" 1 ISO-8859-1, 2 ISO-8859-2)\n"); ++ printf(" -l lwidth set threshold between thin and thick lines to lwidth\n"); ++ printf(" -v verbose mode\n"); ++ + printf("SHAPE (ShapePar driver) Options:\n"); + printf(" -n name Set basename of the macro (e.g. \"face\" gives faceshape and facepar)\n"); + printf("Tcl/Tk (tk) and Perl/Tk (ptk) Options:\n"); +@@ -776,6 +788,12 @@ + int rec_comp(r1, r2) + struct obj_rec *r1, *r2; + { ++ if (r2->depth == r1->depth) ++ { ++ if ((r1->gendev == dev->text) ^ (r2->gendev == dev->text)) ++ return ((r1->gendev == dev->text) * 2 - 1); ++ return (0); ++ } + return (r2->depth - r1->depth); + } + + diff --git a/media-gfx/transfig/files/transfig-3.2.5d-leadspace.patch b/media-gfx/transfig/files/transfig-3.2.5d-leadspace.patch new file mode 100644 index 000000000000..d222cf6590e6 --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-leadspace.patch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 25_PIC_leadspace.dpatch by Roger Leigh <rleigh@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Avoid wrong leading spaces in PIC text (Closes: #611977). + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/dev/genpic.c transfig/fig2dev/dev/genpic.c +--- transfig~/fig2dev/dev/genpic.c ++++ transfig/fig2dev/dev/genpic.c +@@ -443,7 +443,7 @@ + size = PICFONTMAG(t); + if (!OptNoUnps) { + unpsfont(t); +- fprintf(tfp, "\"\\s%d\\f%s ", size, PICFONT(t->font)); ++ fprintf(tfp, "\"\\s%d\\f%s", size, PICFONT(t->font)); + } else { + fprintf(tfp, ".ps\n.ps %d\n", size ); + fprintf(tfp, ".ft\n.ft %s\n", PICPSFONT(t) ); diff --git a/media-gfx/transfig/files/transfig-3.2.5d-libpng-1.5.patch b/media-gfx/transfig/files/transfig-3.2.5d-libpng-1.5.patch new file mode 100644 index 000000000000..e6f15e43e93c --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-libpng-1.5.patch @@ -0,0 +1,39 @@ +http://bugs.gentoo.org/show_bug.cgi?id=356751 + +Index: transfig.3.2.5d/fig2dev/dev/readpng.c +=================================================================== +--- transfig.3.2.5d.orig/fig2dev/dev/readpng.c ++++ transfig.3.2.5d/fig2dev/dev/readpng.c +@@ -62,7 +62,7 @@ read_png(file,filetype,pic,llx,lly) + } + + /* set long jump here */ +- if (setjmp(png_ptr->jmpbuf)) { ++ if (setjmp(png_jmpbuf(png_ptr))) { + /* if we get here there was a problem reading the file */ + png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); + return 0; +@@ -78,15 +78,17 @@ read_png(file,filetype,pic,llx,lly) + png_get_IHDR(png_ptr, info_ptr, &w, &h, &bit_depth, &color_type, + &interlace_type, &compression_type, &filter_type); + +- if (info_ptr->valid & PNG_INFO_gAMA) +- png_set_gamma(png_ptr, 2.2, info_ptr->gamma); +- else +- png_set_gamma(png_ptr, 2.2, 0.45); ++ png_fixed_point gamma = 0.45; ++ png_get_gAMA_fixed(png_ptr,info_ptr,&gamma); ++ png_set_gamma(png_ptr, 2.2, gamma); + +- if (info_ptr->valid & PNG_INFO_bKGD) ++ if (png_get_valid(png_ptr,info_ptr,PNG_INFO_bKGD)) { + /* set the background to the one supplied */ +- png_set_background(png_ptr, &info_ptr->background, ++ png_color_16p background; ++ png_get_bKGD(png_ptr,info_ptr,&background); ++ png_set_background(png_ptr, background, + PNG_BACKGROUND_GAMMA_FILE, 1, 1.0); ++ } + else { + /* blend the canvas background using the alpha channel */ + if (bgspec) { diff --git a/media-gfx/transfig/files/transfig-3.2.5d-precision.patch b/media-gfx/transfig/files/transfig-3.2.5d-precision.patch new file mode 100644 index 000000000000..227f19cfe71b --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5d-precision.patch @@ -0,0 +1,45 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 24_PIC_precision.dpatch by Roger Leigh <rleigh@debian.org> +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Change the precision of PIC floating point output from %.2f to %.3f. +## DP: (Closes: #611948) + +@DPATCH@ +diff -urNad '--exclude=CVS' '--exclude=.svn' transfig~/fig2dev/dev/genpic.c transfig/fig2dev/dev/genpic.c +--- transfig~/fig2dev/dev/genpic.c ++++ transfig/fig2dev/dev/genpic.c +@@ -229,9 +229,9 @@ + + /* Should have a #define somewhere for the # of fill patterns */ + if (l->fill_style != UNFILLED) +- fprintf(tfp, " fill %.2f", ((double) l->fill_style ) / (double) BLACK_FILL); ++ fprintf(tfp, " fill %.3f", ((double) l->fill_style ) / (double) BLACK_FILL); + +- fprintf(tfp, " with .sw at (%.2f,%.2f) ", ++ fprintf(tfp, " with .sw at (%.3f,%.3f) ", + minx / ppi, convy(maxy / ppi)); + + width = (maxx - minx) / ppi; +@@ -239,10 +239,10 @@ + height = convy(maxy / ppi) - convy(miny / ppi); + if (height < 0.0) height = -height; + +- fprintf(tfp, "width %.2f height %.2f", width, height); ++ fprintf(tfp, "width %.3f height %.3f", width, height); + + if (OptArcBox && l->type == T_ARC_BOX) +- fprintf(tfp, " rad %.2f", l->radius/ppi); ++ fprintf(tfp, " rad %.3f", l->radius/ppi); + + AddThickness(); + +@@ -411,7 +411,7 @@ + 2 * e->radiuses.x/ppi, 2 * e->radiuses.y/ppi); + + if ( OptEllipseFill && e->fill_style != UNFILLED) +- fprintf(tfp, " fill %.2f", (double)e->fill_style / (double) BLACK_FILL); ++ fprintf(tfp, " fill %.3f", (double)e->fill_style / (double) BLACK_FILL); + + AddThickness(); + diff --git a/media-gfx/transfig/files/transfig-3.2.5e-fprintf_format_warnings.patch b/media-gfx/transfig/files/transfig-3.2.5e-fprintf_format_warnings.patch new file mode 100644 index 000000000000..6b3f8a7d870d --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5e-fprintf_format_warnings.patch @@ -0,0 +1,55 @@ +Author: Roland Rosenfeld <roland@debian.org> +Description: Add a format string to fprintf()/sprintf() call instead + of directly printing out Err_Mem. This is needed by harding options. + +--- a/fig2dev/trans_spline.c ++++ b/fig2dev/trans_spline.c +@@ -648,7 +648,7 @@ + F_control *cp; + + if ((cp = (F_control *) malloc(CONTROL_SIZE)) == NULL) +- fprintf(stderr,Err_mem); ++ fprintf(stderr, "%s", Err_mem); + return cp; + } + +@@ -659,7 +659,7 @@ + F_line *l; + + if ((l = (F_line *) malloc(LINOBJ_SIZE)) == NULL) +- fprintf(stderr,Err_mem); ++ fprintf(stderr, "%s", Err_mem); + l->pic = NULL; + l->next = NULL; + l->for_arrow = NULL; +--- a/fig2dev/dev/gencgm.c ++++ b/fig2dev/dev/gencgm.c +@@ -139,7 +139,7 @@ + + if (from) { + figname = malloc(strlen(from)+1); +- sprintf(figname, from); ++ sprintf(figname, "%s", from); + p = strrchr(figname, '/'); + if (p) + figname = p+1; /* remove path from name for comment in file */ +--- a/fig2dev/dev/genmp.c ++++ b/fig2dev/dev/genmp.c +@@ -1150,7 +1150,7 @@ + } + } else { + /* special text in latex mode: just write the text. */ +- fprintf(tfp, t->cstring); ++ fprintf(tfp, "%s", t->cstring); + } + fprintf(tfp," etex;\n"); + +@@ -1164,7 +1164,7 @@ + + fprintf(tfp," picture q;\n"); + fprintf(tfp," q=thelabel.urt(\""); +- fprintf(tfp, t->cstring); ++ fprintf(tfp, "%s", t->cstring); + fprintf(tfp, "\" infont "); + if (t->font<0) { + fprintf(tfp, "defaultfont"); diff --git a/media-gfx/transfig/files/transfig-3.2.5e-man-hyphen.patch b/media-gfx/transfig/files/transfig-3.2.5e-man-hyphen.patch new file mode 100644 index 000000000000..bb79ec82c92c --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5e-man-hyphen.patch @@ -0,0 +1,530 @@ +Author: Roland Rosenfeld <roland@debian.org> +Description: Escape hyphen '-' in man pages + +--- a/doc/fig2dev.1 ++++ b/doc/fig2dev.1 +@@ -63,9 +63,9 @@ + Notes: + .br + .I dvips +-and ++ and + .I xdvi +-must be compiled with the tpic support (-DTPIC) for epic, eepic and tpic to work. ++must be compiled with the tpic support (\-DTPIC) for epic, eepic and tpic to work. + .br + You must have ghostscript and ps2pdf, which comes with the ghostscript distribution + to get the pdf output and the bitmap formats (png, jpeg, etc.), and the netpbm (pbmplus) +@@ -81,16 +81,16 @@ + + .TP + .B "\-D +/-rangelist" +-With +rangelist, keep only those depths in the list. With -rangelist, keep all ++With +rangelist, keep only those depths in the list. With \-rangelist, keep all + depths except those in the list. The rangelist may be a list of comma-separated +-numbers or ranges separated by colon (:). For example, -D +10,40,55:70,80 ++numbers or ranges separated by colon (:). For example, \-D +10,40,55:70,80 + means keep only layers 10, 40, 55 \fBthrough\fR 70, and 80. + + .TP +-.B -K +-The selection of the depths with the '-D +/-rangelist' option does normally not ++.B \-K ++The selection of the depths with the '\-D +/\-rangelist' option does normally not + affect the calcualtion of the bounding box. Thus the generated document might +-have a much larger bounding box than necessary. If -K is given then the ++have a much larger bounding box than necessary. If \-K is given then the + bounding box is adjusted to include only those objects in the selected depths. + + .TP +@@ -107,10 +107,10 @@ + .TP + .B "\-G minor[:major][:unit]" + Draws a grid on the page. Specify thin, or thin and thick line +-spacing in one of several units. For example, "-G .25:1cm" draws a thin, ++spacing in one of several units. For example, "\-G .25:1cm" draws a thin, + gray line every .25 cm and a thicker gray line every 1 cm. Specifying +-"-G 1in" draws a thin line every 1 inch. +-Fractions may be used, e.g. "-G 1/16:1/2in" will draw a thin line every ++"\-G 1in" draws a thin line every 1 inch. ++Fractions may be used, e.g. "\-G 1/16:1/2in" will draw a thin line every + 1/16 inch (0.0625 inch) and a thick line every 1/2 inch. + .br + Allowable units are: i, in, inch, f, ft, feet, c, cm, mm, and m. +@@ -126,7 +126,7 @@ + Set the magnification at which the figure is rendered to + .I mag. + The default is 1.0. +-This may not be used with the maxdimension option (-Z). ++This may not be used with the maxdimension option (\-Z). + + .TP + .B "\-s size" +@@ -141,7 +141,7 @@ + .I maxdimension + inches or cm, depending on whether the figure was saved with + imperial or metric units. +-This may not be used with the magnification option (-m). ++This may not be used with the magnification option (\-m). + + .TP + .I other options +@@ -157,7 +157,7 @@ + something that they won't do with EPS files that have an ASCII preview. + .TP + .B "\-b dummyarg" +-Generate binary output (dummy argument required after the "-b"). ++Generate binary output (dummy argument required after the "\-b"). + + .TP + .B \-r +@@ -335,7 +335,7 @@ + file. + The table must have 21 entries - one for each of the area fill patterns. + Each entry consists of 5 numbers which specify the +-1.) pattern number (-1 - 6), ++1.) pattern number (\-1 - 6), + 2.) pattern length (inches), + 3.) fill type (1 - 5), + 4.) fill spacing (inches) and +@@ -390,7 +390,7 @@ + .TP + .B \-F + Use correct font sizes (points, 1/72 inch) instead of the traditional size that xfig/fig2dev uses, +-which is (1/80 inch). The corresponding xfig command-line option is -correct_font_size. ++which is (1/80 inch). The corresponding xfig command-line option is \-correct_font_size. + + .TP + .B \-g color +@@ -403,13 +403,13 @@ + Convert all colors to grayscale. + + .TP +-.B -S smoothfactor ++.B \-S smoothfactor + This will smooth the output by passing + .I smoothfactor + to ghostscript in the +-.I -dTextAlphaBits ++.I \-dTextAlphaBits + and +-.I -dGraphicsAlphaBits ++.I \-dGraphicsAlphaBits + options to improve font rendering and graphic smoothing. + A value of 2 for + .I smoothfactor +@@ -418,7 +418,7 @@ + .SH GIF OPTIONS + + .TP +-.B -t color ++.B \-t color + Use + .I color + for the transparent color in the GIF file. This must be specified +@@ -428,7 +428,7 @@ + + .SH JPEG OPTIONS + .TP +-.B -q image_quality ++.B \-q image_quality + use the integer value + .I image_quality + for the JPEG "Quality" factor. Valid values are 0-100, with the default being 75. +@@ -495,7 +495,7 @@ + .I fig2dev + scales the figure by 1/8 before generating METAFONT code. + The magnification can be further changed with the +-.B -m ++.B \-m + option or by giving magnification options to + .B mf. + .LP +@@ -506,33 +506,33 @@ + under the subdirectory: graphics/mfpic + + .TP +-.B -C code ++.B \-C code + specifies the starting METAFONT font code. The default is 32. + .TP +-.B -n name ++.B \-n name + specifies the name to use in the output file. + .TP +-.B -p pen_magnification ++.B \-p pen_magnification + specifies how much the line width should be magnified compared to the + original figure. The default is 1. + .TP +-.B -t top ++.B \-t top + specifies the top of the whole coordinate system. The default is + .B ypos. + .TP +-.B -x xmin ++.B \-x xmin + specifies the minimum x coordinate value of the figure (inches). The + default is 0. + .TP +-.B -y ymin ++.B \-y ymin + specifies the minumum y coordinate value of the figure (inches). The + default is 0. + .TP +-.B -X xmax ++.B \-X xmax + specifies the maximum x coordinate value of the figure (inches). The + default is 8. + .TP +-.B -Y ymax ++.B \-Y ymax + specifies the maximum y coordinate value of the figure (inches). The + default is 8. + +@@ -546,7 +546,7 @@ + Include file content as additional header. + + .TP +-.B -o ++.B \-o + Old mode (no latex). + + .TP +@@ -597,15 +597,15 @@ + Set encoding for latex text translation (0 no translation, 1 ISO-8859-1, 2 ISO-8859-2) + + .SH GBX OPTIONS (Gerber, RS-247-X) +-Typically you will wish to set the y scale to -1. See +-.B -g ++Typically you will wish to set the y scale to \-1. See ++.B \-g + for more information. + .TP +-.B -d [mm|in] ++.B \-d [mm|in] + Output dimensions should be assumed to be millimeters (mm) or inches + (in). The default is millimeters. + .TP +-.B -p [pos|neg] ++.B \-p [pos|neg] + Select the image polarity. For positive images lines drawn in the fig + file will generate lines of material. For negative images lines drawn + in the fig file will result in removed material. Consider etching a +@@ -613,29 +613,29 @@ + choosing 'neg' will result in these lines being etched through the + chrome, leaving transparent lines. + .TP +-.B -g <x scale>x<y scale>+<x offset>+<y offset> ++.B \-g <x scale>x<y scale>+<x offset>+<y offset> + This controls the geometry of the output, scaling the dimensions as + shown and applying the given offset. Typically you will wish to set +-the y scale to -1, mirroring about the x axis. This is because Gerber ++the y scale to \-1, mirroring about the x axis. This is because Gerber + assumes the origin to be bottom left, while xfig selects top left. + .TP +-.B -f <n digits>.<n digits> ++.B \-f <n digits>.<n digits> + This controls the number of digits of precision before and after the +-implied decimal point. With -f 5.3 the following number 12345678 +-corresponds to 12345.678. Whereas with -f 3.5 it corresponds to ++implied decimal point. With \-f 5.3 the following number 12345678 ++corresponds to 12345.678. Whereas with \-f 3.5 it corresponds to + 123.45678. The default is for 3 places before the decimal point and 5 + after. This corresponds, to a range of 0 to 1m in 10 micron + increments. + .TP +-.B -i [on|off] ++.B \-i [on|off] + Controls the output of comments describing the type of objects being + output. The text appears as comments starting with ## on each line in + the output file. By default this is on. + + .SH POSTSCRIPT, ENCAPSULATED POSTSCRIPT (EPS), and PDF OPTIONS + With PostScript, xfig can be used to create multiple page figures +-Specify the -M option to produce a multi-page output. +-For posters, add -O to overlap the pages slightly to get around the problem of ++Specify the \-M option to produce a multi-page output. ++For posters, add \-O to overlap the pages slightly to get around the problem of + the unprintable area in most printers, then cut and paste the pages together. + Due to memory limitations of most laser printers, the figure should not + have large imported images (bitmaps). Great for text with very big letters. +@@ -658,7 +658,7 @@ + .LP + The EPS driver has the following two special options: + .TP +-.B -B 'Wx [Wy X0 Y0]' ++.B \-B 'Wx [Wy X0 Y0]' + This specifies that the bounding box of the EPS file should have the + width Wx and the height Wy. + Note that it doesn't scale the figure to this size, it merely sets the bounding box. +@@ -667,13 +667,13 @@ + screen (0,0) (upper-left). + Wx, Wy, X0 and Y0 are interpreted in centimeters or inches depending on the measure + given in the fig-file. +-Remember to put either quotes (") or apostrophes (') to group the arguments to -B. ++Remember to put either quotes (") or apostrophes (') to group the arguments to \-B. + .TP +-.B -R 'Wx [Wy X0 Y0]' +-Same as the -B option except that X0 and Y0 is relative to the lower ++.B \-R 'Wx [Wy X0 Y0]' ++Same as the \-B option except that X0 and Y0 is relative to the lower + left corner of the + .B figure. +-Remember to put either quotes (") or apostrophes (') to group the arguments to -R. ++Remember to put either quotes (") or apostrophes (') to group the arguments to \-R. + .LP + The PDF driver uses all the PostScript options. + .LP +@@ -697,106 +697,106 @@ + In addition, there are 16 patterns such as bricks, diagonal lines, + crosshatch, etc. + .TP +-.B -A ++.B \-A + Add an ASCII (EPSI) preview. + .TP +-.B -b borderwidth ++.B \-b borderwidth + Make blank border around figure of width + .I borderwidth. + .br +-Not availble in EPS. ++Not available in EPS. + + .TP +-.B -C dummy_arg ++.B \-C dummy_arg + Add a color *binary* TIFF preview for Microsoft products that need a binary preview. +-See also -T (monochrome preview). A dummy argument must be supplied for historical reasons. ++See also \-T (monochrome preview). A dummy argument must be supplied for historical reasons. + .TP +-.B -c ++.B \-c + option centers the figure on the page. + The centering may not be accurate if there are texts in the + .I fig_file + that extends too far to the right of other objects. + .TP +-.B -e ++.B \-e + option puts the figure against the edge (not centered) of the page. +-Not availble in EPS. ++Not available in EPS. + + .TP +-.B -F ++.B \-F + Use correct font sizes (points) instead of the traditional size that xfig/fig2dev uses, +-which is 1/80 inch. The corresponding xfig command-line option is -correct_font_size. ++which is 1/80 inch. The corresponding xfig command-line option is \-correct_font_size. + + .TP +-.B -g color ++.B \-g color + Use + .I color + for the background. + .TP +-.B -l dummy_arg ++.B \-l dummy_arg + Generate figure in landscape mode. The dummy argument is ignored, + but must appear on the command line for reasons of compatibility. + This option will override the orientation specification in the + file (for file versions 3.0 and higher). + .br +-Not availble in EPS. ++Not available in EPS. + .TP +-.B -M ++.B \-M + Generate multiple pages if figure exceeds paper size. + .br +-Not availble in EPS. ++Not available in EPS. + .TP + .B \-N + Convert all colors to grayscale. + + .TP +-.B -n name ++.B \-n name + Set the Title part of the PostScript output to + .I name. + This is useful when the input to + .I fig2dev + comes from standard input. + .TP +-.B -O ++.B \-O + When used with \fB-M\fR, + overlaps the pages slightly to get around the problem of + the unprintable area in most printers. + .br +-Not availble in EPS. ++Not available in EPS. + .TP +-.B -p dummy_arg ++.B \-p dummy_arg + Generate figure in portrait mode. The dummy argument is ignored, + but must appear on the command line for reasons of compatibility. + This option will override the orientation specification in the + file (for file versions 3.0 and higher). + This is the default for Fig files of version 2.1 or lower. + .br +-Not availble in EPS. ++Not available in EPS. + + .TP +-.B -T ++.B \-T + Add a monochrome *binary* TIFF preview for Microsoft products that need a binary preview. +-See also -C (color preview). ++See also \-C (color preview). + .TP + .TP +-.B -x offset ++.B \-x offset + shift the figure in the X direction by + .I offset + units (1/72 inch). + A negative value shifts the figure to the left and a positive value to the right. + .br +-Not availble in EPS. ++Not available in EPS. + .TP +-.B -y offset ++.B \-y offset + shift the figure in the Y direction by + .I offset + units (1/72 inch). + A negative value shifts the figure up and a positive value down. + .br +-Not availble in EPS. ++Not available in EPS. + .TP +-.B -z papersize ++.B \-z papersize + Sets the papersize. +-Not availble in EPS. ++Not available in EPS. + .br + Available paper sizes are: + .nf +@@ -839,17 +839,17 @@ + special text. + + .TP +-.B -F ++.B \-F + Use correct font sizes (points) instead of the traditional size that xfig/fig2dev uses, +-which is 1/80 inch. The corresponding xfig command-line option is -correct_font_size. ++which is 1/80 inch. The corresponding xfig command-line option is \-correct_font_size. + + .TP +-.B -g color ++.B \-g color + Use + .I color + for the background. + .TP +-.B -n name ++.B \-n name + sets the Title part of the PostScript output to + .I name. + This is useful when the input to +@@ -876,7 +876,7 @@ + LaTeX document. With this option on, you can set the font from your LaTeX + document (like "\fB\\sfshape \\input picture.eepic\fR"). + .TP +-.B -p file ++.B \-p file + specifies the name of the PostScript file to be overlaid. + If not set or its value is null then no PS file will be inserted. + +@@ -977,7 +977,7 @@ + .TP + .B \-P + Shorthand for +-.B -n 3 ++.B \-n 3 + . + + .TP +@@ -992,7 +992,7 @@ + directory! Don't put your stuff here. The + .B includegraphics + commands in the output file refer to this directory. Even +-if the -p option is not used, ++if the \-p option is not used, + .B includegrpahics + commands follow this convention with the default directory + .I "\./eps". +@@ -1064,26 +1064,26 @@ + + .SH TK and PTK OPTIONS (tcl/tk and Perl/tk) + .TP +-.B -l dummy_arg ++.B \-l dummy_arg + Generate figure in landscape mode. The dummy argument is ignored, + but must appear on the command line for reasons of compatibility. + This option will override the orientation specification in the + file (for file versions 3.0 and higher). + .TP +-.B -p dummy_arg ++.B \-p dummy_arg + Generate figure in portrait mode. The dummy argument is ignored, + but must appear on the command line for reasons of compatibility. + This option will override the orientation specification in the + file (for file versions 3.0 and higher). + This is the default for Fig files of version 2.1 or lower. + .TP +-.B -P ++.B \-P + Generate canvas of full page size instead of using the bounding box + of the figure's objects. The default is to use only the bounding box. + .TP +-.B -z papersize ++.B \-z papersize + Sets the papersize. See the POSTSCRIPT OPTIONS for available paper sizes. +-This is only used when the -P option (use full page) is used. ++This is only used when the \-P option (use full page) is used. + + .SH "SEE ALSO" + [x]fig(1), +--- a/doc/transfig.1 ++++ b/doc/transfig.1 +@@ -3,11 +3,11 @@ + transfig \- creates a makefile for portable LaTeX figures + .SH SYNOPSIS + .B transfig +-[ -L \fIlanguage\fR ] +-[ -M \fImakefile\fR ] +-[ -T \fItexfile\fR ] +-[ -I \fImacrofile\fR ] +-[ -V ] ++[ \-L \fIlanguage\fR ] ++[ \-M \fImakefile\fR ] ++[ \-T \fItexfile\fR ] ++[ \-I \fImacrofile\fR ] ++[ \-V ] + [ \fIcontrol_specs\fR figfile ... ] + .SH DESCRIPTION + .I Transfig +@@ -76,13 +76,13 @@ + is the default. + .PP + The names of the makefile and TeX macro file can be set with the +--M and -T options. ++\-M and \-T options. + The default names are "Makefile" and "transfig.tex", respectively. + If there is already an existing \fImakefile\fR in the directory, transfig + first renames it to \fImakefile~\fR. The same holds for any existing TeX macro file. +-If the -I option is specified, then a command to read in \fImacrofile\fR is ++If the \-I option is specified, then a command to read in \fImacrofile\fR is + inserted into the TeX macro file. +-If the -V option is specified, the program version number is printed only. ++If the \-V option is specified, the program version number is printed only. + .PP + Control specifiers are + .TP diff --git a/media-gfx/transfig/files/transfig-3.2.5e-typos.patch b/media-gfx/transfig/files/transfig-3.2.5e-typos.patch new file mode 100644 index 000000000000..0a0e5cd60b1e --- /dev/null +++ b/media-gfx/transfig/files/transfig-3.2.5e-typos.patch @@ -0,0 +1,25 @@ +Author: Roland Rosenfeld <roland@debian.org> +Description: Fix some spelling errors in the binaries + +--- a/fig2dev/dev/readgif.c ++++ b/fig2dev/dev/readgif.c +@@ -151,7 +151,7 @@ + + if (c == '!') { /* Extension */ + if (! ReadOK(file,&c,1)) +- fprintf(stderr,"GIF read error on extention function code\n"); ++ fprintf(stderr,"GIF read error on extension function code\n"); + (void) DoGIFextension(file, c); + continue; + } +--- a/fig2dev/read.c ++++ b/fig2dev/read.c +@@ -109,7 +109,7 @@ + /* Format error; relevant error message is already delivered */ + } + else +- put_msg("File \"%s\" is not accessable; %s", file, strerror(err)); ++ put_msg("File \"%s\" is not accessible; %s", file, strerror(err)); + } + + /********************************************************** diff --git a/media-gfx/transfig/files/transfig-ru_RU.CP1251.ps b/media-gfx/transfig/files/transfig-ru_RU.CP1251.ps new file mode 100644 index 000000000000..f8c142a642b2 --- /dev/null +++ b/media-gfx/transfig/files/transfig-ru_RU.CP1251.ps @@ -0,0 +1,298 @@ +%% Begining of ru_RU.CP1251.ps +%% +%% Author: Yura Zotov <yz@altlinux.ru> +%% based on cs_CZ.ps made by Radim Gelner <radim.gelner@suse.cz> +%% +%%BeginResource: encoding ISOLatin2Encoding + +/isol2vec [ +10#0 /.notdef +10#1 /.notdef +10#2 /.notdef +10#3 /.notdef +10#4 /.notdef +10#5 /.notdef +10#6 /.notdef +10#7 /.notdef +10#8 /.notdef +10#9 /.notdef +10#10 /.notdef +10#11 /.notdef +10#12 /.notdef +10#13 /.notdef +10#14 /.notdef +10#15 /.notdef +10#16 /.notdef +10#17 /.notdef +10#18 /.notdef +10#19 /.notdef +10#20 /.notdef +10#21 /.notdef +10#22 /.notdef +10#23 /.notdef +10#24 /.notdef +10#25 /.notdef +10#26 /.notdef +10#27 /.notdef +10#28 /.notdef +10#29 /.notdef +10#30 /.notdef +10#31 /.notdef +10#32 /space +10#33 /exclam +10#34 /quotedbl +10#35 /numbersign +10#36 /dollar +10#37 /percent +10#38 /ampersand +10#39 /quoteright +10#40 /parenleft +10#41 /parenright +10#42 /asterisk +10#43 /plus +10#44 /comma +10#45 /hyphen +10#46 /period +10#47 /slash +10#48 /zero +10#49 /one +10#50 /two +10#51 /three +10#52 /four +10#53 /five +10#54 /six +10#55 /seven +10#56 /eight +10#57 /nine +10#58 /colon +10#59 /semicolon +10#60 /less +10#61 /equal +10#62 /greater +10#63 /question +10#64 /at +10#65 /A +10#66 /B +10#67 /C +10#68 /D +10#69 /E +10#70 /F +10#71 /G +10#72 /H +10#73 /I +10#74 /J +10#75 /K +10#76 /L +10#77 /M +10#78 /N +10#79 /O +10#80 /P +10#81 /Q +10#82 /R +10#83 /S +10#84 /T +10#85 /U +10#86 /V +10#87 /W +10#88 /X +10#89 /Y +10#90 /Z +10#91 /bracketleft +10#92 /backslash +10#93 /bracketright +10#94 /asciicircum +10#95 /underscore +10#96 /quoteleft +10#97 /a +10#98 /b +10#99 /c +10#100 /d +10#101 /e +10#102 /f +10#103 /g +10#104 /h +10#105 /i +10#106 /j +10#107 /k +10#108 /l +10#109 /m +10#110 /n +10#111 /o +10#112 /p +10#113 /q +10#114 /r +10#115 /s +10#116 /t +10#117 /u +10#118 /v +10#119 /w +10#120 /x +10#121 /y +10#122 /z +10#123 /braceleft +10#124 /bar +10#125 /braceright +10#126 /asciitilde +10#127 /.notdef +10#128 /afii10051 +10#129 /afii10052 +10#130 /quotesinglbase +10#131 /afii10100 +10#132 /quotedblbase +10#133 /ellipsis +10#134 /dagger +10#135 /daggerdbl +10#136 /Euro +10#137 /perthousand +10#138 /afii10058 +10#139 /guilsinglleft +10#140 /afii10059 +10#141 /afii10061 +10#142 /afii10060 +10#143 /afii10145 +10#144 /afii10099 +10#145 /quoteleft +10#146 /quoteright +10#147 /quotedblleft +10#148 /quotedblright +10#149 /bullet +10#150 /endash +10#151 /emdash +10#152 /tilde +10#153 /trademark +10#154 /afii10106 +10#155 /guilsinglright +10#156 /afii10107 +10#157 /afii10109 +10#158 /afii10108 +10#159 /afii10193 +10#160 /.notdef +10#161 /afii10062 +10#162 /afii10110 +10#163 /afii10057 +10#164 /currency +10#165 /afii10050 +10#166 /brokenbar +10#167 /section +10#168 /afii10023 +10#169 /copyright +10#170 /afii10053 +10#171 /guillemotleft +10#172 /logicalnot +10#173 /hyphen +10#174 /registered +10#175 /afii10056 +10#176 /degree +10#177 /plusminus +10#178 /afii10055 +10#179 /afii10103 +10#180 /afii10098 +10#181 /mu +10#182 /paragraph +10#183 /periodcentered +10#184 /afii10071 +10#185 /afii61352 +10#186 /afii10101 +10#187 /guillemotright +10#188 /afii10105 +10#189 /afii10054 +10#190 /afii10102 +10#191 /afii10104 +10#192 /afii10017 +10#193 /afii10018 +10#194 /afii10019 +10#195 /afii10020 +10#196 /afii10021 +10#197 /afii10022 +10#198 /afii10024 +10#199 /afii10025 +10#200 /afii10026 +10#201 /afii10027 +10#202 /afii10028 +10#203 /afii10029 +10#204 /afii10030 +10#205 /afii10031 +10#206 /afii10032 +10#207 /afii10033 +10#208 /afii10034 +10#209 /afii10035 +10#210 /afii10036 +10#211 /afii10037 +10#212 /afii10038 +10#213 /afii10039 +10#214 /afii10040 +10#215 /afii10041 +10#216 /afii10042 +10#217 /afii10043 +10#218 /afii10044 +10#219 /afii10045 +10#220 /afii10046 +10#221 /afii10047 +10#222 /afii10048 +10#223 /afii10049 +10#224 /afii10065 +10#225 /afii10066 +10#226 /afii10067 +10#227 /afii10068 +10#228 /afii10069 +10#229 /afii10070 +10#230 /afii10072 +10#231 /afii10073 +10#232 /afii10074 +10#233 /afii10075 +10#234 /afii10076 +10#235 /afii10077 +10#236 /afii10078 +10#237 /afii10079 +10#238 /afii10080 +10#239 /afii10081 +10#240 /afii10082 +10#241 /afii10083 +10#242 /afii10084 +10#243 /afii10085 +10#244 /afii10086 +10#245 /afii10087 +10#246 /afii10088 +10#247 /afii10089 +10#248 /afii10090 +10#249 /afii10091 +10#250 /afii10092 +10#251 /afii10093 +10#252 /afii10094 +10#253 /afii10095 +10#254 /afii10096 +10#255 /afii10097] def +%%EndResource +/Times-Roman /Times-Roman-iso isol2vec ReEncode +/Times-Italic /Times-Italic-iso isol2vec ReEncode +/Times-Bold /Times-Bold-iso isol2vec ReEncode +/Times-BoldItalic /Times-BoldItalic-iso isol2vec ReEncode +/AvantGarde-Book /AvantGarde-Book-iso isol2vec ReEncode +/AvantGarde-BookOblique /AvantGarde-BookOblique-iso isol2vec ReEncode +/AvantGarde-Demi /AvantGarde-Demi-iso isol2vec ReEncode +/AvantGarde-DemiOblique /AvantGarde-DemiOblique-iso isol2vec ReEncode +/Bookman-Light /Bookman-Light-iso isol2vec ReEncode +/Bookman-LightItalic /Bookman-LightItalic-iso isol2vec ReEncode +/Bookman-Demi /Bookman-Demi-iso isol2vec ReEncode +/Bookman-DemiItalic /Bookman-DemiItalic-iso isol2vec ReEncode +/Courier /Courier-iso isol2vec ReEncode +/Courier-Oblique /Courier-Oblique-iso isol2vec ReEncode +/Courier-Bold /Courier-Bold-iso isol2vec ReEncode +/Courier-BoldOblique /Courier-BoldOblique-iso isol2vec ReEncode +/Helvetica /Helvetica-iso isol2vec ReEncode +/Helvetica-Oblique /Helvetica-Oblique-iso isol2vec ReEncode +/Helvetica-Bold /Helvetica-Bold-iso isol2vec ReEncode +/Helvetica-BoldOblique /Helvetica-BoldOblique-iso isol2vec ReEncode +/Helvetica-Narrow /Helvetica-Narrow-iso isol2vec ReEncode +/Helvetica-Narrow-Oblique /Helvetica-Narrow-Oblique-iso isol2vec ReEncode +/Helvetica-Narrow-Bold /Helvetica-Narrow-Bold-iso isol2vec ReEncode +/Helvetica-Narrow-BoldOblique /Helvetica-Narrow-BoldOblique-iso isol2vec ReEncode +/NewCenturySchlbk-Roman /NewCenturySchlbk-Roman-iso isol2vec ReEncode +/NewCenturySchlbk-Italic /NewCenturySchlbk-Italic-iso isol2vec ReEncode +/NewCenturySchlbk-Bold /NewCenturySchlbk-Bold-iso isol2vec ReEncode +/NewCenturySchlbk-BoldItalic /NewCenturySchlbk-BoldItalic-iso isol2vec ReEncode +/Palatino-Roman /Palatino-Roman-iso isol2vec ReEncode +/Palatino-Italic /Palatino-Italic-iso isol2vec ReEncode +/Palatino-Bold /Palatino-Bold-iso isol2vec ReEncode +/Palatino-BoldItalic /Palatino-BoldItalic-iso isol2vec ReEncode +%% End of ru_RU.CP1251.ps diff --git a/media-gfx/transfig/files/transfig-ru_RU.KOI8-R.ps b/media-gfx/transfig/files/transfig-ru_RU.KOI8-R.ps new file mode 100644 index 000000000000..1bda0b26a602 --- /dev/null +++ b/media-gfx/transfig/files/transfig-ru_RU.KOI8-R.ps @@ -0,0 +1,298 @@ +%% Begining of ru_RU.KOI8-R.ps +%% +%% Author: Yura Zotov <yz@altlinux.ru> +%% based on cs_CZ.ps made by Radim Gelner <radim.gelner@suse.cz> +%% +%%BeginResource: encoding ISOLatin2Encoding + +/isol2vec [ +10#0 /.notdef +10#1 /.notdef +10#2 /.notdef +10#3 /.notdef +10#4 /.notdef +10#5 /.notdef +10#6 /.notdef +10#7 /.notdef +10#8 /.notdef +10#9 /.notdef +10#10 /.notdef +10#11 /.notdef +10#12 /.notdef +10#13 /.notdef +10#14 /.notdef +10#15 /.notdef +10#16 /.notdef +10#17 /.notdef +10#18 /.notdef +10#19 /.notdef +10#20 /.notdef +10#21 /.notdef +10#22 /.notdef +10#23 /.notdef +10#24 /.notdef +10#25 /.notdef +10#26 /.notdef +10#27 /.notdef +10#28 /.notdef +10#29 /.notdef +10#30 /.notdef +10#31 /.notdef +10#32 /space +10#33 /exclam +10#34 /quotedbl +10#35 /numbersign +10#36 /dollar +10#37 /percent +10#38 /ampersand +10#39 /quotesingle +10#40 /parenleft +10#41 /parenright +10#42 /asterisk +10#43 /plus +10#44 /comma +10#45 /hyphen +10#46 /period +10#47 /slash +10#48 /zero +10#49 /one +10#50 /two +10#51 /three +10#52 /four +10#53 /five +10#54 /six +10#55 /seven +10#56 /eight +10#57 /nine +10#58 /colon +10#59 /semicolon +10#60 /less +10#61 /equal +10#62 /greater +10#63 /question +10#64 /at +10#65 /A +10#66 /B +10#67 /C +10#68 /D +10#69 /E +10#70 /F +10#71 /G +10#72 /H +10#73 /I +10#74 /J +10#75 /K +10#76 /L +10#77 /M +10#78 /N +10#79 /O +10#80 /P +10#81 /Q +10#82 /R +10#83 /S +10#84 /T +10#85 /U +10#86 /V +10#87 /W +10#88 /X +10#89 /Y +10#90 /Z +10#91 /bracketleft +10#92 /backslash +10#93 /bracketright +10#94 /asciicircum +10#95 /underscore +10#96 /grave +10#97 /a +10#98 /b +10#99 /c +10#100 /d +10#101 /e +10#102 /f +10#103 /g +10#104 /h +10#105 /i +10#106 /j +10#107 /k +10#108 /l +10#109 /m +10#110 /n +10#111 /o +10#112 /p +10#113 /q +10#114 /r +10#115 /s +10#116 /t +10#117 /u +10#118 /v +10#119 /w +10#120 /x +10#121 /y +10#122 /z +10#123 /braceleft +10#124 /bar +10#125 /braceright +10#126 /asciitilde +10#127 /.notdef +10#128 /SF100000 +10#129 /SF110000 +10#130 /SF010000 +10#131 /SF030000 +10#132 /SF020000 +10#133 /SF040000 +10#134 /SF080000 +10#135 /SF090000 +10#136 /SF060000 +10#137 /SF070000 +10#138 /SF050000 +10#139 /upblock +10#140 /dnblock +10#141 /block +10#142 /lfblock +10#143 /rtblock +10#144 /ltshade +10#145 /shade +10#146 /dkshade +10#147 /integraltp +10#148 /filledbox +10#149 /uni2219 +10#150 /radical +10#151 /approxequal +10#152 /lessequal +10#153 /greaterequal +10#154 /uni00A0 +10#155 /integralbt +10#156 /degree +10#157 /twosuperior +10#158 /periodcentered +10#159 /divide +10#160 /SF430000 +10#161 /SF240000 +10#162 /SF510000 +10#163 /afii10071 +10#164 /SF520000 +10#165 /SF390000 +10#166 /SF220000 +10#167 /SF210000 +10#168 /SF250000 +10#169 /SF500000 +10#170 /SF490000 +10#171 /SF380000 +10#172 /SF280000 +10#173 /SF270000 +10#174 /SF260000 +10#175 /SF360000 +10#176 /SF370000 +10#177 /SF420000 +10#178 /SF190000 +10#179 /afii10023 +10#180 /SF200000 +10#181 /SF230000 +10#182 /SF470000 +10#183 /SF480000 +10#184 /SF410000 +10#185 /SF450000 +10#186 /SF460000 +10#187 /SF400000 +10#188 /SF540000 +10#189 /SF530000 +10#190 /SF440000 +10#191 /copyright +10#192 /afii10096 +10#193 /afii10065 +10#194 /afii10066 +10#195 /afii10088 +10#196 /afii10069 +10#197 /afii10070 +10#198 /afii10086 +10#199 /afii10068 +10#200 /afii10087 +10#201 /afii10074 +10#202 /afii10075 +10#203 /afii10076 +10#204 /afii10077 +10#205 /afii10078 +10#206 /afii10079 +10#207 /afii10080 +10#208 /afii10081 +10#209 /afii10097 +10#210 /afii10082 +10#211 /afii10083 +10#212 /afii10084 +10#213 /afii10085 +10#214 /afii10072 +10#215 /afii10067 +10#216 /afii10094 +10#217 /afii10093 +10#218 /afii10073 +10#219 /afii10090 +10#220 /afii10095 +10#221 /afii10091 +10#222 /afii10089 +10#223 /afii10092 +10#224 /afii10048 +10#225 /afii10017 +10#226 /afii10018 +10#227 /afii10040 +10#228 /afii10021 +10#229 /afii10022 +10#230 /afii10038 +10#231 /afii10020 +10#232 /afii10039 +10#233 /afii10026 +10#234 /afii10027 +10#235 /afii10028 +10#236 /afii10029 +10#237 /afii10030 +10#238 /afii10031 +10#239 /afii10032 +10#240 /afii10033 +10#241 /afii10049 +10#242 /afii10034 +10#243 /afii10035 +10#244 /afii10036 +10#245 /afii10037 +10#246 /afii10024 +10#247 /afii10019 +10#248 /afii10046 +10#249 /afii10045 +10#250 /afii10025 +10#251 /afii10042 +10#252 /afii10047 +10#253 /afii10043 +10#254 /afii10041 +10#255 /afii10044] def +%%EndResource +/Times-Roman /Times-Roman-iso isol2vec ReEncode +/Times-Italic /Times-Italic-iso isol2vec ReEncode +/Times-Bold /Times-Bold-iso isol2vec ReEncode +/Times-BoldItalic /Times-BoldItalic-iso isol2vec ReEncode +/AvantGarde-Book /AvantGarde-Book-iso isol2vec ReEncode +/AvantGarde-BookOblique /AvantGarde-BookOblique-iso isol2vec ReEncode +/AvantGarde-Demi /AvantGarde-Demi-iso isol2vec ReEncode +/AvantGarde-DemiOblique /AvantGarde-DemiOblique-iso isol2vec ReEncode +/Bookman-Light /Bookman-Light-iso isol2vec ReEncode +/Bookman-LightItalic /Bookman-LightItalic-iso isol2vec ReEncode +/Bookman-Demi /Bookman-Demi-iso isol2vec ReEncode +/Bookman-DemiItalic /Bookman-DemiItalic-iso isol2vec ReEncode +/Courier /Courier-iso isol2vec ReEncode +/Courier-Oblique /Courier-Oblique-iso isol2vec ReEncode +/Courier-Bold /Courier-Bold-iso isol2vec ReEncode +/Courier-BoldOblique /Courier-BoldOblique-iso isol2vec ReEncode +/Helvetica /Helvetica-iso isol2vec ReEncode +/Helvetica-Oblique /Helvetica-Oblique-iso isol2vec ReEncode +/Helvetica-Bold /Helvetica-Bold-iso isol2vec ReEncode +/Helvetica-BoldOblique /Helvetica-BoldOblique-iso isol2vec ReEncode +/Helvetica-Narrow /Helvetica-Narrow-iso isol2vec ReEncode +/Helvetica-Narrow-Oblique /Helvetica-Narrow-Oblique-iso isol2vec ReEncode +/Helvetica-Narrow-Bold /Helvetica-Narrow-Bold-iso isol2vec ReEncode +/Helvetica-Narrow-BoldOblique /Helvetica-Narrow-BoldOblique-iso isol2vec ReEncode +/NewCenturySchlbk-Roman /NewCenturySchlbk-Roman-iso isol2vec ReEncode +/NewCenturySchlbk-Italic /NewCenturySchlbk-Italic-iso isol2vec ReEncode +/NewCenturySchlbk-Bold /NewCenturySchlbk-Bold-iso isol2vec ReEncode +/NewCenturySchlbk-BoldItalic /NewCenturySchlbk-BoldItalic-iso isol2vec ReEncode +/Palatino-Roman /Palatino-Roman-iso isol2vec ReEncode +/Palatino-Italic /Palatino-Italic-iso isol2vec ReEncode +/Palatino-Bold /Palatino-Bold-iso isol2vec ReEncode +/Palatino-BoldItalic /Palatino-BoldItalic-iso isol2vec ReEncode +%% End of ru_RU.KOI8-R.ps diff --git a/media-gfx/transfig/files/transfig-uk_UA.KOI8-U.ps b/media-gfx/transfig/files/transfig-uk_UA.KOI8-U.ps new file mode 100644 index 000000000000..8803c72e4697 --- /dev/null +++ b/media-gfx/transfig/files/transfig-uk_UA.KOI8-U.ps @@ -0,0 +1,298 @@ +%% Begining of uk_UA.KOI8-U.ps +%% +%% Author: Yura Zotov <yz@altlinux.ru> +%% based on cs_CZ.ps made by Radim Gelner <radim.gelner@suse.cz> +%% +%%BeginResource: encoding ISOLatin2Encoding + +/isol2vec [ +10#0 /.notdef +10#1 /.notdef +10#2 /.notdef +10#3 /.notdef +10#4 /.notdef +10#5 /.notdef +10#6 /.notdef +10#7 /.notdef +10#8 /.notdef +10#9 /.notdef +10#10 /.notdef +10#11 /.notdef +10#12 /.notdef +10#13 /.notdef +10#14 /.notdef +10#15 /.notdef +10#16 /.notdef +10#17 /.notdef +10#18 /.notdef +10#19 /.notdef +10#20 /.notdef +10#21 /.notdef +10#22 /.notdef +10#23 /.notdef +10#24 /.notdef +10#25 /.notdef +10#26 /.notdef +10#27 /.notdef +10#28 /.notdef +10#29 /.notdef +10#30 /.notdef +10#31 /.notdef +10#32 /space +10#33 /exclam +10#34 /quotedbl +10#35 /numbersign +10#36 /dollar +10#37 /percent +10#38 /ampersand +10#39 /quotesingle +10#40 /parenleft +10#41 /parenright +10#42 /asterisk +10#43 /plus +10#44 /comma +10#45 /hyphen +10#46 /period +10#47 /slash +10#48 /zero +10#49 /one +10#50 /two +10#51 /three +10#52 /four +10#53 /five +10#54 /six +10#55 /seven +10#56 /eight +10#57 /nine +10#58 /colon +10#59 /semicolon +10#60 /less +10#61 /equal +10#62 /greater +10#63 /question +10#64 /at +10#65 /A +10#66 /B +10#67 /C +10#68 /D +10#69 /E +10#70 /F +10#71 /G +10#72 /H +10#73 /I +10#74 /J +10#75 /K +10#76 /L +10#77 /M +10#78 /N +10#79 /O +10#80 /P +10#81 /Q +10#82 /R +10#83 /S +10#84 /T +10#85 /U +10#86 /V +10#87 /W +10#88 /X +10#89 /Y +10#90 /Z +10#91 /bracketleft +10#92 /backslash +10#93 /bracketright +10#94 /asciicircum +10#95 /underscore +10#96 /grave +10#97 /a +10#98 /b +10#99 /c +10#100 /d +10#101 /e +10#102 /f +10#103 /g +10#104 /h +10#105 /i +10#106 /j +10#107 /k +10#108 /l +10#109 /m +10#110 /n +10#111 /o +10#112 /p +10#113 /q +10#114 /r +10#115 /s +10#116 /t +10#117 /u +10#118 /v +10#119 /w +10#120 /x +10#121 /y +10#122 /z +10#123 /braceleft +10#124 /bar +10#125 /braceright +10#126 /asciitilde +10#127 /.notdef +10#128 /SF100000 +10#129 /SF110000 +10#130 /SF010000 +10#131 /SF030000 +10#132 /SF020000 +10#133 /SF040000 +10#134 /SF080000 +10#135 /SF090000 +10#136 /SF060000 +10#137 /SF070000 +10#138 /SF050000 +10#139 /upblock +10#140 /dnblock +10#141 /block +10#142 /lfblock +10#143 /rtblock +10#144 /ltshade +10#145 /shade +10#146 /dkshade +10#147 /integraltp +10#148 /filledbox +10#149 /uni2219 +10#150 /radical +10#151 /approxequal +10#152 /lessequal +10#153 /greaterequal +10#154 /uni00A0 +10#155 /integralbt +10#156 /degree +10#157 /twosuperior +10#158 /periodcentered +10#159 /divide +10#160 /SF430000 +10#161 /SF240000 +10#162 /SF510000 +10#163 /afii10071 +10#164 /afii10101 +10#165 /SF390000 +10#166 /afii10103 +10#167 /afii10104 +10#168 /SF250000 +10#169 /SF500000 +10#170 /SF490000 +10#171 /SF380000 +10#172 /SF280000 +10#173 /afii10098 +10#174 /SF260000 +10#175 /SF360000 +10#176 /SF370000 +10#177 /SF420000 +10#178 /SF190000 +10#179 /afii10023 +10#180 /afii10053 +10#181 /SF230000 +10#182 /afii10055 +10#183 /afii10056 +10#184 /SF410000 +10#185 /SF450000 +10#186 /SF460000 +10#187 /SF400000 +10#188 /SF540000 +10#189 /afii10050 +10#190 /SF440000 +10#191 /copyright +10#192 /afii10096 +10#193 /afii10065 +10#194 /afii10066 +10#195 /afii10088 +10#196 /afii10069 +10#197 /afii10070 +10#198 /afii10086 +10#199 /afii10068 +10#200 /afii10087 +10#201 /afii10074 +10#202 /afii10075 +10#203 /afii10076 +10#204 /afii10077 +10#205 /afii10078 +10#206 /afii10079 +10#207 /afii10080 +10#208 /afii10081 +10#209 /afii10097 +10#210 /afii10082 +10#211 /afii10083 +10#212 /afii10084 +10#213 /afii10085 +10#214 /afii10072 +10#215 /afii10067 +10#216 /afii10094 +10#217 /afii10093 +10#218 /afii10073 +10#219 /afii10090 +10#220 /afii10095 +10#221 /afii10091 +10#222 /afii10089 +10#223 /afii10092 +10#224 /afii10048 +10#225 /afii10017 +10#226 /afii10018 +10#227 /afii10040 +10#228 /afii10021 +10#229 /afii10022 +10#230 /afii10038 +10#231 /afii10020 +10#232 /afii10039 +10#233 /afii10026 +10#234 /afii10027 +10#235 /afii10028 +10#236 /afii10029 +10#237 /afii10030 +10#238 /afii10031 +10#239 /afii10032 +10#240 /afii10033 +10#241 /afii10049 +10#242 /afii10034 +10#243 /afii10035 +10#244 /afii10036 +10#245 /afii10037 +10#246 /afii10024 +10#247 /afii10019 +10#248 /afii10046 +10#249 /afii10045 +10#250 /afii10025 +10#251 /afii10042 +10#252 /afii10047 +10#253 /afii10043 +10#254 /afii10041 +10#255 /afii10044] def +%%EndResource +/Times-Roman /Times-Roman-iso isol2vec ReEncode +/Times-Italic /Times-Italic-iso isol2vec ReEncode +/Times-Bold /Times-Bold-iso isol2vec ReEncode +/Times-BoldItalic /Times-BoldItalic-iso isol2vec ReEncode +/AvantGarde-Book /AvantGarde-Book-iso isol2vec ReEncode +/AvantGarde-BookOblique /AvantGarde-BookOblique-iso isol2vec ReEncode +/AvantGarde-Demi /AvantGarde-Demi-iso isol2vec ReEncode +/AvantGarde-DemiOblique /AvantGarde-DemiOblique-iso isol2vec ReEncode +/Bookman-Light /Bookman-Light-iso isol2vec ReEncode +/Bookman-LightItalic /Bookman-LightItalic-iso isol2vec ReEncode +/Bookman-Demi /Bookman-Demi-iso isol2vec ReEncode +/Bookman-DemiItalic /Bookman-DemiItalic-iso isol2vec ReEncode +/Courier /Courier-iso isol2vec ReEncode +/Courier-Oblique /Courier-Oblique-iso isol2vec ReEncode +/Courier-Bold /Courier-Bold-iso isol2vec ReEncode +/Courier-BoldOblique /Courier-BoldOblique-iso isol2vec ReEncode +/Helvetica /Helvetica-iso isol2vec ReEncode +/Helvetica-Oblique /Helvetica-Oblique-iso isol2vec ReEncode +/Helvetica-Bold /Helvetica-Bold-iso isol2vec ReEncode +/Helvetica-BoldOblique /Helvetica-BoldOblique-iso isol2vec ReEncode +/Helvetica-Narrow /Helvetica-Narrow-iso isol2vec ReEncode +/Helvetica-Narrow-Oblique /Helvetica-Narrow-Oblique-iso isol2vec ReEncode +/Helvetica-Narrow-Bold /Helvetica-Narrow-Bold-iso isol2vec ReEncode +/Helvetica-Narrow-BoldOblique /Helvetica-Narrow-BoldOblique-iso isol2vec ReEncode +/NewCenturySchlbk-Roman /NewCenturySchlbk-Roman-iso isol2vec ReEncode +/NewCenturySchlbk-Italic /NewCenturySchlbk-Italic-iso isol2vec ReEncode +/NewCenturySchlbk-Bold /NewCenturySchlbk-Bold-iso isol2vec ReEncode +/NewCenturySchlbk-BoldItalic /NewCenturySchlbk-BoldItalic-iso isol2vec ReEncode +/Palatino-Roman /Palatino-Roman-iso isol2vec ReEncode +/Palatino-Italic /Palatino-Italic-iso isol2vec ReEncode +/Palatino-Bold /Palatino-Bold-iso isol2vec ReEncode +/Palatino-BoldItalic /Palatino-BoldItalic-iso isol2vec ReEncode +%% End of uk_UA.KOI8-U.ps diff --git a/media-gfx/transfig/metadata.xml b/media-gfx/transfig/metadata.xml new file mode 100644 index 000000000000..129d5d9f4b93 --- /dev/null +++ b/media-gfx/transfig/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>pva@gentoo.org</email> + <name>Peter Volkov</name> + </maintainer> + <upstream> + <remote-id type="sourceforge">mcj</remote-id> + </upstream> +</pkgmetadata> diff --git a/media-gfx/transfig/transfig-3.2.5d-r1.ebuild b/media-gfx/transfig/transfig-3.2.5d-r1.ebuild new file mode 100644 index 000000000000..c972d2d71bdc --- /dev/null +++ b/media-gfx/transfig/transfig-3.2.5d-r1.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" +inherit toolchain-funcs eutils flag-o-matic multilib + +MY_P=${PN}.${PV} + +DESCRIPTION="A set of tools for creating TeX documents with graphics" +HOMEPAGE="http://www.xfig.org/" +SRC_URI="mirror://sourceforge/mcj/${MY_P}.tar.gz + mirror://gentoo/fig2mpdf-1.1.2.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +IUSE="" + +RDEPEND="x11-libs/libXpm + virtual/jpeg + media-libs/libpng + x11-apps/rgb" +DEPEND="${RDEPEND} + x11-misc/imake + app-text/rman" + +S=${WORKDIR}/${MY_P} + +sed_Imakefile() { + # see fig2dev/Imakefile for details + vars2subs="BINDIR=${EPREFIX}/usr/bin + MANDIR=${EPREFIX}/usr/share/man/man\$\(MANSUFFIX\) + XFIGLIBDIR=${EPREFIX}/usr/share/xfig + PNGINC=-I${EPREFIX}/usr/include/X11 + XPMINC=-I${EPREFIX}/usr/include/X11 + USEINLINE=-DUSE_INLINE + RGB=${EPREFIX}/usr/share/X11/rgb.txt + FIG2DEV_LIBDIR=${EPREFIX}/usr/share/fig2dev" + + for variable in ${vars2subs} ; do + varname=${variable%%=*} + varval=${variable##*=} + sed -i "s:^\(XCOMM\)*[[:space:]]*${varname}[[:space:]]*=.*$:${varname} = ${varval}:" "$@" + done +} + +src_prepare() { + find . -type f -exec chmod a-x '{}' \; + find . -name Makefile -delete + epatch "${FILESDIR}"/${P}-fig2mpdf-r1.patch + epatch "${FILESDIR}"/${PN}-3.2.5c-maxfontsize.patch + epatch "${FILESDIR}"/${P}-leadspace.patch + epatch "${FILESDIR}"/${P}-precision.patch + epatch "${FILESDIR}"/${P}-MAXWIDTH.patch + epatch "${FILESDIR}"/${P}-libpng-1.5.patch #356751 + epatch "${FILESDIR}"/${PN}-3.2.5-solaris.patch + + sed -e 's:-L$(ZLIBDIR) -lz::' \ + -e 's: -lX11::' \ + -i fig2dev/Imakefile || die + sed_Imakefile fig2dev/Imakefile fig2dev/dev/Imakefile +} + +src_compile() { + xmkmf || die "xmkmf failed" + emake Makefiles + + emake CC="$(tc-getCC)" LOCAL_LDFLAGS="${LDFLAGS}" CDEBUGFLAGS="${CFLAGS}" \ + USRLIBDIR="${EPREFIX}/usr/$(get_libdir)" +} + +src_install() { + emake DESTDIR="${D}" \ + ${transfig_conf} install install.man + + dobin "${WORKDIR}/fig2mpdf/fig2mpdf" + doman "${WORKDIR}/fig2mpdf/fig2mpdf.1" + + insinto /usr/share/fig2dev/ + newins "${FILESDIR}/transfig-ru_RU.CP1251.ps" ru_RU.CP1251.ps + newins "${FILESDIR}/transfig-ru_RU.KOI8-R.ps" ru_RU.KOI8-R.ps + newins "${FILESDIR}/transfig-uk_UA.KOI8-U.ps" uk_UA.KOI8-U.ps + + dohtml "${WORKDIR}/fig2mpdf/doc/"* || die + + mv "${ED}"/usr/bin/fig2ps2tex{.sh,} || die #338295 + + dodoc README CHANGES LATEX.AND.XFIG NOTES +} + +pkg_postinst() { + elog "Note, that defaults are changed and now if you don't want to ship" + elog "personal information into output files, use fig2dev with -a option." +} diff --git a/media-gfx/transfig/transfig-3.2.5e.ebuild b/media-gfx/transfig/transfig-3.2.5e.ebuild new file mode 100644 index 000000000000..49075044ecc8 --- /dev/null +++ b/media-gfx/transfig/transfig-3.2.5e.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" +inherit toolchain-funcs eutils flag-o-matic multilib + +MY_P=${PN}.${PV} + +DESCRIPTION="A set of tools for creating TeX documents with graphics" +HOMEPAGE="http://www.xfig.org/" +SRC_URI="mirror://sourceforge/mcj/${MY_P}.tar.gz + mirror://gentoo/fig2mpdf-1.1.2.tar.bz2" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="alpha amd64 ~arm ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x64-solaris ~x86-solaris" +IUSE="" + +RDEPEND="x11-libs/libXpm + virtual/jpeg + media-libs/libpng + x11-apps/rgb" +DEPEND="${RDEPEND} + x11-misc/imake + app-text/rman" + +S=${WORKDIR}/${MY_P} + +sed_Imakefile() { + # see fig2dev/Imakefile for details + vars2subs="BINDIR=${EPREFIX}/usr/bin + MANDIR=${EPREFIX}/usr/share/man/man\$\(MANSUFFIX\) + XFIGLIBDIR=${EPREFIX}/usr/share/xfig + PNGINC=-I${EPREFIX}/usr/include/X11 + XPMINC=-I${EPREFIX}/usr/include/X11 + USEINLINE=-DUSE_INLINE + RGB=${EPREFIX}/usr/share/X11/rgb.txt + FIG2DEV_LIBDIR=${EPREFIX}/usr/share/fig2dev" + + for variable in ${vars2subs} ; do + varname=${variable%%=*} + varval=${variable##*=} + sed -i "s:^\(XCOMM\)*[[:space:]]*${varname}[[:space:]]*=.*$:${varname} = ${varval}:" "$@" + done +} + +src_prepare() { + find . -type f -exec chmod a-x '{}' \; + find . -name Makefile -delete + epatch "${FILESDIR}"/${PN}-3.2.5d-fig2mpdf-r1.patch + epatch "${FILESDIR}"/${PN}-3.2.5c-maxfontsize.patch + epatch "${FILESDIR}"/${PN}-3.2.5-solaris.patch + epatch "${FILESDIR}"/${PN}-3.2.5e-typos.patch + epatch "${FILESDIR}"/${PN}-3.2.5e-man-hyphen.patch + epatch "${FILESDIR}"/${PN}-3.2.5e-fprintf_format_warnings.patch + + sed -e 's:-L$(ZLIBDIR) -lz::' \ + -e 's: -lX11::' \ + -i fig2dev/Imakefile || die + sed_Imakefile fig2dev/Imakefile fig2dev/dev/Imakefile +} + +src_compile() { + xmkmf || die "xmkmf failed" + emake Makefiles + + emake CC="$(tc-getCC)" LOCAL_LDFLAGS="${LDFLAGS}" CDEBUGFLAGS="${CFLAGS}" \ + USRLIBDIR="${EPREFIX}/usr/$(get_libdir)" +} + +src_install() { + emake DESTDIR="${D}" \ + ${transfig_conf} install install.man + + dobin "${WORKDIR}/fig2mpdf/fig2mpdf" + doman "${WORKDIR}/fig2mpdf/fig2mpdf.1" + + insinto /usr/share/fig2dev/ + newins "${FILESDIR}/transfig-ru_RU.CP1251.ps" ru_RU.CP1251.ps + newins "${FILESDIR}/transfig-ru_RU.KOI8-R.ps" ru_RU.KOI8-R.ps + newins "${FILESDIR}/transfig-uk_UA.KOI8-U.ps" uk_UA.KOI8-U.ps + + dohtml "${WORKDIR}/fig2mpdf/doc/"* || die + + mv "${ED}"/usr/bin/fig2ps2tex{.sh,} || die #338295 + + dodoc README CHANGES LATEX.AND.XFIG NOTES +} + +pkg_postinst() { + elog "Note, that defaults are changed and now if you don't want to ship" + elog "personal information into output files, use fig2dev with -a option." +} |