summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvipsk/makefont.c
diff options
context:
space:
mode:
authorDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
committerDenis Bitouzé <dbitouze@wanadoo.fr>2021-02-25 18:23:07 +0000
commitc6101f91d071883b48b1b4b51e5eba0f36d9a78d (patch)
tree1bf7f5a881d7a4f5c5bf59d0b2821943dd822372 /Build/source/texk/dvipsk/makefont.c
parent07ee7222e389b0777456b427a55c22d0e6ffd267 (diff)
French translation for tlmgr updated
git-svn-id: svn://tug.org/texlive/trunk@57912 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/dvipsk/makefont.c')
-rw-r--r--Build/source/texk/dvipsk/makefont.c300
1 files changed, 0 insertions, 300 deletions
diff --git a/Build/source/texk/dvipsk/makefont.c b/Build/source/texk/dvipsk/makefont.c
deleted file mode 100644
index ef303888a57..00000000000
--- a/Build/source/texk/dvipsk/makefont.c
+++ /dev/null
@@ -1,300 +0,0 @@
-/* makefont.c */
-#include "dvips.h" /* The copyright notice in that file is included too! */
-#include <math.h>
-/*
- * The external declarations:
- */
-#include "protos.h"
-#ifdef OS2
-#include <stdlib.h>
-#endif
-#if !defined(WIN32)
-extern char *getenv();
-extern int system();
-#endif
-#if defined MSDOS || defined OS2
-/*
- * Write mfjob file
- */
-void
-mfjobout(char *font, double mag)
-{
- if (mfjobfile == (FILE *)NULL) {
- char pkout[128];
- char *p;
- int i;
- for (p=pkpath, i=0; *p && *p!=PATHSEP && i<127; p++) {
- if (*p=='%') {
- p++;
- switch(*p) { /* convert %x codes to mfjob @y codes */
- case 'b':
- sprintf(pkout+i,"%d",actualdpi);
- break;
- case 'd':
- strcpy(pkout+i,"@Rr");
- break;
- case 'f':
- strcpy(pkout+i,"@f");
- break;
- case 'p':
- strcpy(pkout+i,"pk");
- break;
- case 'm':
- strcpy(pkout+i, mfmode ? mfmode : "default");
- break;
- case '%':
- strcpy(pkout+i,"%");
- break;
- default:
- sprintf(pkout+i, "%%%c", *p);
- fprintf(stderr,"Unknown option %%%c in pk path\n",*p);
- }
- i += strlen(pkout+i);
- }
- else
- pkout[i++] = *p;
- }
- /* *p='\0'; Could some DOS person explain to me what this does? */
- pkout[i] = 0;
- mfjobfile = fopen(mfjobname,"w");
- if (mfjobfile == (FILE *)NULL)
- return;
- fprintf(mfjobfile,"input[dvidrv];\n{\ndriver=dvips;\n");
- if (actualdpi == vactualdpi)
- fprintf(mfjobfile,"mode=%s[%d];\n",mfmode,actualdpi);
- else
- fprintf(mfjobfile,"mode=%s[%d %d];\n",mfmode,actualdpi,vactualdpi);
- fprintf(mfjobfile,"output=pk[%s];\n",pkout);
- }
- fprintf(mfjobfile,"{font=%s; mag=%f;}\n",font,mag);
- fprintf(stderr,
- "Appending {font=%s; mag=%f;} to %s\n",font,mag,mfjobname);
-}
-#endif
-/*
- * Calculate magstep values.
- */
-static int
-magstep(register int n, register int bdpi)
-{
- register float t;
- int neg = 0;
-
- if (n < 0) {
- neg = 1;
- n = -n;
- }
- if (n & 1) {
- n &= ~1;
- t = 1.095445115;
- } else
- t = 1.0;
- while (n > 8) {
- n -= 8;
- t = t * 2.0736;
- }
- while (n > 0) {
- n -= 2;
- t = t * 1.2;
- }
- if (neg)
- return((int)floor(0.5 + bdpi / t));
- else
- return((int)floor(0.5 + bdpi * t));
-}
-#ifdef MAKEPKCMD
-static char *defcommand = MAKEPKCMD " %n %d %b %m";
-#else
-#ifdef OS2
-static char *doscommand = "command /c MakeTeXP %n %d %b %m";
-static char *os2command = "MakeTeXP %n %d %b %m";
-#define defcommand ( _osmode==OS2_MODE ? os2command : doscommand )
-#else
-#ifdef MSDOS
-static char *defcommand = "command /c MakeTeXP %n %d %b %m";
-#else
-#ifdef VMCMS
-static char *defcommand = "EXEC MakeTeXPK %n %d %b %m";
-#else
-#ifdef ATARIST
-static char *defcommand = "maketexp %n %d %b %m";
-#else
-static char *defcommand = "MakeTeXPK %n %d %b %m";
-#endif
-#endif
-#endif
-#endif
-#endif
-char *command = 0;
-/*
- * This routine tries to create a font by executing a command, and
- * then opening the font again if possible.
- */
-static char buf[125];
-void
-makefont(char *name, int dpi, int bdpi)
-{
- register char *p, *q;
- register int m, n;
- int modegiven = 0;
-#if defined MSDOS || defined OS2 || defined(ATARIST)
- double t;
-#endif
-
- if (command == 0)
- if (secure == 0 && (command=getenv("MAKETEXPK")))
- command = newstring(command);
- else
- command = defcommand;
- for (p=command, q=buf; *p; p++)
- if (*p != '%')
- *q++ = *p;
- else {
- switch (*++p) {
-case 'n' : case 'N' :
- strcpy(q, name);
- break;
-case 'd' : case 'D' :
- sprintf(q, "%d", dpi);
- break;
-case 'b' : case 'B' :
- sprintf(q, "%d", bdpi);
- break;
-case 'o' : case 'O' :
- sprintf(q, "%.99s", mfmode ? mfmode : "default");
- modegiven = 1;
- break;
-case 'm' : case 'M' :
-/*
- * Here we want to return a string. If we can find some integer
- * m such that floor(0.5 + bdpi * 1.2 ^ (m/2)) = dpi, we write out
- * magstep(m/2)
- * where m/2 is a decimal number; else we write out
- * dpi/bdpi
- * We do this for the very slight improvement in accuracy that
- * magstep() gives us over the rounded dpi/bdpi.
- */
- m = 0;
- if (dpi < bdpi) {
- while (1) {
- m--;
- n = magstep(m, bdpi);
- if (n == dpi)
- break;
- if (n < dpi || m < -40) {
- m = 9999;
- break;
- }
- }
- } else if (dpi > bdpi) {
- while (1) {
- m++;
- n = magstep(m, bdpi);
- if (n == dpi)
- break;
- if (n > dpi || m > 40) {
- m = 9999;
- break;
- }
- }
- }
-#if defined MSDOS || defined OS2
-/* write out magnification as decimal number */
- if (m == 9999) {
- t = (double)dpi/bdpi;
- } else {
- if (m < 0)
- n = -m;
- else
- n = m;
- if (n & 1) {
- n &= ~1;
- t = 1.095445115;
- } else
- t = 1.0;
- while (n > 0) {
- n -= 2;
- t = t * 1.2;
- }
- if (m < 0)
- t = 1 / t;
- }
- sprintf(q, "%12.9f", t);
-#else
-#ifndef ATARIST
- if (m == 9999) {
-#else
- {
-#endif
- sprintf(q, "%d+%d/%d", dpi/bdpi, dpi%bdpi, bdpi);
- } else if (m >= 0) {
- sprintf(q, "magstep\\(%d.%d\\)", m/2, (m&1)*5);
- } else {
- sprintf(q, "magstep\\(-%d.%d\\)", (-m)/2, (m&1)*5);
- }
-#endif
- break;
-case 0 : *q = 0;
- break;
-default: *q++ = *p;
- *q = 0;
- break;
- }
- q += strlen(q);
- }
- *q = 0;
- if (mfmode && !modegiven) {
- strcpy(q, " ");
- strcat(q, mfmode);
- }
-#ifdef OS2
- if ((_osmode == OS2_MODE) && filter)
- strcat(buf, quiet ? " >nul" : " 1>&2");
-#else
-#ifndef VMCMS /* no filters and no need to print to stderr */
-#ifndef MVSXA
-#ifndef MSDOS
-#ifndef ATARIST
- if (filter)
- strcat(buf, quiet ? " >/dev/null" : " 1>&2");
-#endif
-#endif
-#endif
-#endif
-#endif
-
-#if defined MSDOS || defined OS2
- if (! quiet && mfjobname == (char *)NULL)
- fprintf(stderr, "- %s\n", buf);
- if (dontmakefont == 0) {
- if (mfjobname != (char *)NULL)
- mfjobout(name,t);
- else
- system(buf);
- }
-#else
- if (! quiet)
- fprintf(stderr, "- %s\n", buf);
- if (dontmakefont == 0)
- system(buf);
-#endif
- else {
- static FILE *fontlog = 0;
-
- if (fontlog == 0) {
- fontlog = fopen("missfont.log", "a");
- if (fontlog != 0) {
- fprintf(stderr,
-#ifndef VMCMS
- "Appending font creation commands to missfont.log\n");
-#else
- "\nMissing font data will be passed to DVIPS EXEC via MISSFONT LOG\n");
-#endif
- }
- }
- if (fontlog != 0) {
- fprintf(fontlog, "%s\n", buf);
- fflush(fontlog);
- }
- }
-}