diff options
Diffstat (limited to 'Master/texmf-dist/doc/cstex/cspsfonts-gen')
-rw-r--r-- | Master/texmf-dist/doc/cstex/cspsfonts-gen/README | 12 | ||||
-rwxr-xr-x | Master/texmf-dist/doc/cstex/cspsfonts-gen/fontgen | 72 | ||||
-rw-r--r-- | Master/texmf-dist/doc/cstex/cspsfonts-gen/kernoff.c | 45 | ||||
-rwxr-xr-x | Master/texmf-dist/doc/cstex/cspsfonts-gen/mkf | 9 | ||||
-rwxr-xr-x | Master/texmf-dist/doc/cstex/cspsfonts-gen/mkfc | 9 | ||||
-rw-r--r-- | Master/texmf-dist/doc/cstex/cspsfonts-gen/xl2.enc | 332 | ||||
-rw-r--r-- | Master/texmf-dist/doc/cstex/cspsfonts-gen/xt2.enc | 321 |
7 files changed, 800 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/README b/Master/texmf-dist/doc/cstex/cspsfonts-gen/README new file mode 100644 index 00000000000..9225b898141 --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/README @@ -0,0 +1,12 @@ +Font generation tools of cspsfonts +---------------------------------- +Petr Olsak, 2012 + +The script fontgen was used to generate the metrics of cspsfonts pckage. +The script mkf generates one ``normal'' metrics. +The script mkc generates one ``Caps&SmalCaps'' metrics. + +The program kenroff removes small (invisible) kerns form AFM metric in order +to do the tfm more simple. The kerns smaller then 9/1000 of font size was +removed. + diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/fontgen b/Master/texmf-dist/doc/cstex/cspsfonts-gen/fontgen new file mode 100755 index 00000000000..0a35ae76c85 --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/fontgen @@ -0,0 +1,72 @@ +# mkfc command have to preceede the mkf command with the same metric name +# because mkfc makes the raw metrics (and deletes it) and after then the mkf +# command makes the fine metrics with kerns and ligatures used by TeX. + +export AFMDIR="/usr/share/texmf-dist/fonts/afm/urw/*" + +./mkfc ptmr8z ptmrc8z xl2.enc utmr8a.afm +./mkfc ptmb8z ptmbc8z xl2.enc utmb8a.afm + +./mkf ptmr8z xl2.enc utmr8a.afm +./mkf ptmb8z xl2.enc utmb8a.afm +./mkf ptmri8z xl2.enc utmri8a.afm +./mkf ptmbi8z xl2.enc utmbi8a.afm + +./mkfc pagk8z pagkc8z xl2.enc uagk8a.afm +./mkfc pagd8z pagdc8z xl2.enc uagd8a.afm + +./mkf pagk8z xl2.enc uagk8a.afm +./mkf pagko8z xl2.enc uagko8a.afm +./mkf pagd8z xl2.enc uagd8a.afm +./mkf pagdo8z xl2.enc uagdo8a.afm + +./mkfc pbkd8z pbkdc8z xl2.enc ubkd8a.afm +./mkfc pbkl8z pbklc8z xl2.enc ubkl8a.afm + +./mkf pbkd8z xl2.enc ubkd8a.afm +./mkf pbkdi8z xl2.enc ubkdi8a.afm +./mkf pbkl8z xl2.enc ubkl8a.afm +./mkf pbkli8z xl2.enc ubkli8a.afm + +./mkfc pcrb8u pcrbc8u xt2.enc ucrb8a.afm +./mkfc pcrr8u pcrrc8u xt2.enc ucrr8a.afm + +./mkf pcrb8u xt2.enc ucrb8a.afm +./mkf pcrbo8u xt2.enc ucrbo8a.afm +./mkf pcrro8u xt2.enc ucrro8a.afm +./mkf pcrr8u xt2.enc ucrr8a.afm + +./mkfc pncb8z pncbc8z xl2.enc uncb8a.afm +./mkfc pncr8z pncrc8z xl2.enc uncr8a.afm + +./mkf pncb8z xl2.enc uncb8a.afm +./mkf pncbi8z xl2.enc uncbi8a.afm +./mkf pncri8z xl2.enc uncri8a.afm +./mkf pncr8z xl2.enc uncr8a.afm + +./mkfc phvb8z phvbc8z xl2.enc uhvb8a.afm +./mkfc phvr8z phvrc8z xl2.enc uhvr8a.afm + +./mkf phvb8z xl2.enc uhvb8a.afm +./mkf phvbo8z xl2.enc uhvbo8a.afm +./mkf phvro8z xl2.enc uhvro8a.afm +./mkf phvr8z xl2.enc uhvr8a.afm + +./mkfc phvbn8z phvbnc8z xl2.enc uhvb8ac.afm +./mkfc phvrn8z phvrnc8z xl2.enc uhvr8ac.afm + +./mkf phvbn8z xl2.enc uhvb8ac.afm +./mkf phvbon8z xl2.enc uhvbo8ac.afm +./mkf phvrn8z xl2.enc uhvr8ac.afm +./mkf phvron8z xl2.enc uhvro8ac.afm + +./mkfc pplr8z pplrc8z xl2.enc uplr8a.afm +./mkfc pplb8z pplbc8z xl2.enc uplb8a.afm + +./mkf pplbi8z xl2.enc uplbi8a.afm +./mkf pplri8z xl2.enc uplri8a.afm +./mkf pplr8z xl2.enc uplr8a.afm +./mkf pplb8z xl2.enc uplb8a.afm + +./mkf pzcmi8z xl2.enc uzcmi8a.afm + diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/kernoff.c b/Master/texmf-dist/doc/cstex/cspsfonts-gen/kernoff.c new file mode 100644 index 00000000000..45bdbb5810b --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/kernoff.c @@ -0,0 +1,45 @@ +/* This program removes kerns smaller then KERNLIMIT from AFM file + Petr Olsak, 2012 + input AFM file = stdin, output = stdout, no parameters */ + + +#include <stdio.h> + +#define KERNLIMIT 9 + +char line[500]; + +int mygets(char *s, int num) +{ + int c, i; + if ((c=fgetc(stdin))==EOF) return EOF; + if (c=='\n') return s[0] = 0; + s[0] = c; i=1; + while (1) { + if (i>=num) { + fprintf (stderr, "line is too long\n"); + s[num-1] = 0; + return; + } + if ((c=fgetc(stdin))==EOF) return s[i] = 0; + if (c=='\n') return s[i] = 0; + s[i++]=c; + } +} + +int main(int argc, char *argv[]) +{ + int i, v; + while (1) { + if (mygets(line,500)==EOF) return 0; + v=100; + if (line[0]=='K' && line[1]=='P' && line[2]=='X' && line[3]==' ') { + i = 4; + while (line[i]!=' ') i++; + i++; + while (line[i]!=' ') i++; + v = atoi(&line[i]); + } + if (v>KERNLIMIT || v<-KERNLIMIT) printf("%s\n", line); + } +} diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkf b/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkf new file mode 100755 index 00000000000..f05e423bd7c --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkf @@ -0,0 +1,9 @@ +#!/bin/bash + +echo $1 $2 +cat $AFMDIR/$3 | ./kernoff > $3 +afm2tfm $3 -T $2 -v $1 $1.tfm +rm $1.tfm +vptovf $1 +rm $1.vpl $1.vf + diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkfc b/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkfc new file mode 100755 index 00000000000..f0d9664389e --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/mkfc @@ -0,0 +1,9 @@ +#!/bin/bash + +echo $1 $2 $3 +cat $AFMDIR/$4 | ./kernoff > $4 +afm2tfm $4 -T $3 -V $2 $1.tfm +rm $1-c.tfm +vptovf $2 +rm $2.vpl + diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/xl2.enc b/Master/texmf-dist/doc/cstex/cspsfonts-gen/xl2.enc new file mode 100644 index 00000000000..e13e0f2e18b --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/xl2.enc @@ -0,0 +1,332 @@ +% @psencodingfile{ +% author = "Petr Olsak, Zdenek Wagner", +% date = "19oct12", +% filename = "xl2.enc", +% license = "public domain", +% email = "tex-fonts@tug.org", +% codetable = "ISO/ASCII", +% docstring = " +% some of our (CSTUG- czech TeX Users Group) users want to support +% 8bit font coding such that: +% -- lower 7bit is exactly OT1 (but with differences imposed +% by DEK -- e.g. layout of cmr is different from cmtt) +% -- upper part is taken from ISO-Latin 2 (iso 8859-2), +% but some of empty positions are filled with useful characters +% usually available in type-1 font (permill sign etc.) +% " +% } +% +% 19oct12 - added: /Euro, /trademark, /copyright, /registered +% /guilsinglleft/right, /quotesinglbase, /quoteleft. +% fi and ff LIGKERN's added. (Petr Olsak) +% 27aug05 - record Petr Olsak and Zdenek Wagner as the authors. +% 12jun05 - remove Texinfo @'s from LIGKERN's. +% +/XL2encoding [ +%%%%% '000 = "00 + /Gamma + /Delta + /Theta + /Lambda + /Xi + /Pi + /Sigma + /Upsilon +%%%%% '010 = "08 + /Phi + /Psi + /Omega + /ff + /fi + /fl + /ffi + /ffl +%%%%% '020 = "10 + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring +%%%%% '030 = "18 + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash +%%%%% '040 = "20 + /.notdef + /exclam + /quotedblright + /numbersign + /dollar + /percent + /ampersand + /quoteright +%%%%% '050 = "28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +%%%%% '060 = "30 + /zero + /one + /two + /three + /four + /five + /six + /seven +%%%%% '070 = "38 + /eight + /nine + /colon + /semicolon + /exclamdown + /equal + /questiondown + /question +%%%%% '100 = "40 + /at + /A + /B + /C + /D + /E + /F + /G +%%%%% '110 = "48 + /H + /I + /J + /K + /L + /M + /N + /O +%%%%% '120 = "50 + /P + /Q + /R + /S + /T + /U + /V + /W +%%%%% '130 = "58 + /X + /Y + /Z + /bracketleft + /quotedblleft + /bracketright + /circumflex + /dotaccent +%%%%% '140 = "60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +%%%%% '150 = "68 + /h + /i + /j + /k + /l + /m + /n + /o +%%%%% '160 = "70 + /p + /q + /r + /s + /t + /u + /v + /w +%%%%% '170 = "78 + /x + /y + /z + /endash + /emdash + /hungarumlaut + /tilde + /dieresis +%%%%% '200 = "80 + /ellipsis + /dagger + /daggerdbl + /bullet + /sterling + /paragraph + /Euro + /.notdef +%%%%% '210 = "88 + /trademark + /copyright + /registered + /.notdef + /.notdef + /perthousand + /guilsinglleft + /guilsinglright +%%%%% '220 = "90 + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef +%%%%% '230 = "98 + /Agrave + /.notdef + /quotesinglbase + /quoteleft + /hyphen + /ogonek + /guillemotleft + /guillemotright +%%%%% '240 = "A0 + /.notdef + /Aogonek + /breve + /Lslash + /currency + /Lcaron + /Sacute + /section +%%%%% '250 = "A8 + /dieresis + /Scaron + /Scedilla + /Tcaron + /Zacute + /.notdef + /Zcaron + /Zdotaccent +%%%%% '260 = "B0 + /ring + /aogonek + /cedilla + /lslash + /acute + /lcaron + /sacute + /caron +%%%%% '270 = "B8 + /agrave + /scaron + /scedilla + /tcaron + /zacute + /hungarumlaut + /zcaron + /zdotaccent +%%%%% '300 = "C0 + /Racute + /Aacute + /Acircumflex + /Abreve + /Adieresis + /Lacute + /Cacute + /Ccedilla +%%%%% '310 = "C8 + /Ccaron + /Eacute + /Eogonek + /Edieresis + /Ecaron + /Iacute + /Icircumflex + /Dcaron +%%%%% '320 = "D0 + /Eth + /Nacute + /Ncaron + /Oacute + /Ocircumflex + /Ohungarumlaut + /Odieresis + /multiply +%%%%% '330 = "D8 + /Rcaron + /Uring + /Uacute + /Uhungarumlaut + /Udieresis + /Yacute + /Togonek + /germandbls +%%%%% '340 = "E0 + /racute + /aacute + /acircumflex + /abreve + /adieresis + /lacute + /cacute + /ccedilla +%%%%% '350 = "E8 + /ccaron + /eacute + /eogonek + /edieresis + /ecaron + /iacute + /icircumflex + /dcaron +%%%%% '360 = "F0 + /eth + /nacute + /ncaron + /oacute + /ocircumflex + /ohungarumlaut + /odieresis + /divide +%%%%% '370 = "F8 + /rcaron + /uring + /uacute + /uhungarumlaut + /udieresis + /yacute + /quotedblbase + /quotedblleft +] def + +% LIGKERN f i =: fi ; f fi =: ffi ; +% LIGKERN f f =: ff ; +% LIGKERN hyphen hyphen =: endash ; endash hyphen =: emdash ; +% LIGKERN quoteleft quoteleft =: quotedblleft ; +% LIGKERN quoteright quoteright =: quotedblright ; +% LIGKERN exclamdown exclamdown =: guillemotleft ; +% frenchdblquotes +% LIGKERN questiondown questiondown =: guillemotright ; +% csquoteleft +% LIGKERN comma comma =: quotedblbase ; +% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ; +% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ; +% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ; +% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ; +% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ; +% LIGKERN nine {} * ; * {} nine ; +% LIGKERN question {} quoteleft ; exclam {} quoteleft ; diff --git a/Master/texmf-dist/doc/cstex/cspsfonts-gen/xt2.enc b/Master/texmf-dist/doc/cstex/cspsfonts-gen/xt2.enc new file mode 100644 index 00000000000..26d1d3af51e --- /dev/null +++ b/Master/texmf-dist/doc/cstex/cspsfonts-gen/xt2.enc @@ -0,0 +1,321 @@ +% @psencodingfile{ +% author = "Petr Olsak, Zdenek Wagner", +% date = "19aug12", +% filename = "xt2.enc", +% license = "public domain", +% email = "tex-fonts@tug.org", +% codetable = "ISO/ASCII", +% docstring = "This is the typewriter version of xl2." +% } +% +% 19oct12 - added: /Euro, /trademark, /copyright, /registered +% /guilsinglleft/right, /quotesinglbase, /quoteleft (Petr Olsak) +% 27aug05 - record Petr Olsak and Zdenek Wagner as the authors. +% 12jun05 - remove Texinfo @'s from LIGKERN's. +% +/XT2encoding [ +%%%%% '000 = "00 + /Gamma + /Delta + /Theta + /Lambda + /Xi + /Pi + /Sigma + /Upsilon +%%%%% '010 = "08 + /Phi + /Psi + /Omega + /arrowup + /arrowdown + /quotesingle + /exclamdown + /questiondown +%%%%% '020 = "10 + /dotlessi + /dotlessj + /grave + /acute + /caron + /breve + /macron + /ring +%%%%% '030 = "18 + /cedilla + /germandbls + /ae + /oe + /oslash + /AE + /OE + /Oslash +%%%%% '040 = "20 + /.notdef + /exclam + /quotedblright + /numbersign + /dollar + /percent + /ampersand + /quoteright +%%%%% '050 = "28 + /parenleft + /parenright + /asterisk + /plus + /comma + /hyphen + /period + /slash +%%%%% '060 = "30 + /zero + /one + /two + /three + /four + /five + /six + /seven +%%%%% '070 = "38 + /eight + /nine + /colon + /semicolon + /less + /equal + /greater + /question +%%%%% '100 = "40 + /at + /A + /B + /C + /D + /E + /F + /G +%%%%% '110 = "48 + /H + /I + /J + /K + /L + /M + /N + /O +%%%%% '120 = "50 + /P + /Q + /R + /S + /T + /U + /V + /W +%%%%% '130 = "58 + /X + /Y + /Z + /bracketleft + /backslash + /bracketright + /circumflex + /underscore +%%%%% '140 = "60 + /quoteleft + /a + /b + /c + /d + /e + /f + /g +%%%%% '150 = "68 + /h + /i + /j + /k + /l + /m + /n + /o +%%%%% '160 = "70 + /p + /q + /r + /s + /t + /u + /v + /w +%%%%% '170 = "78 + /x + /y + /z + /braceleft + /bar + /braceright + /tilde + /dieresis +%%%%% '200 = "80 + /ellipsis + /dagger + /daggerdbl + /bullet + /sterling + /paragraph + /Euro + /.notdef +%%%%% '210 = "88 + /trademark + /copyright + /registered + /.notdef + /.notdef + /perthousand + /guilsinglleft + /guilsinglright +%%%%% '220 = "90 + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef + /.notdef +%%%%% '230 = "98 + /Agrave + /.notdef + /quotesinglbase + /quoteleft + /hyphen + /ogonek + /guillemotleft + /guillemotright +%%%%% '240 = "A0 + /.notdef + /Aogonek + /breve + /Lslash + /currency + /Lcaron + /Sacute + /section +%%%%% '250 = "A8 + /dieresis + /Scaron + /Scedilla + /Tcaron + /Zacute + /.notdef + /Zcaron + /Zdotaccent +%%%%% '260 = "B0 + /ring + /aogonek + /cedilla + /lslash + /acute + /lcaron + /sacute + /caron +%%%%% '270 = "B8 + /agrave + /scaron + /scedilla + /tcaron + /zacute + /hungarumlaut + /zcaron + /zdotaccent +%%%%% '300 = "C0 + /Racute + /Aacute + /Acircumflex + /Abreve + /Adieresis + /Lacute + /Cacute + /Ccedilla +%%%%% '310 = "C8 + /Ccaron + /Eacute + /Eogonek + /Edieresis + /Ecaron + /Iacute + /Icircumflex + /Dcaron +%%%%% '320 = "D0 + /Eth + /Nacute + /Ncaron + /Oacute + /Ocircumflex + /Ohungarumlaut + /Odieresis + /multiply +%%%%% '330 = "D8 + /Rcaron + /Uring + /Uacute + /Uhungarumlaut + /Udieresis + /Yacute + /Togonek + /germandbls +%%%%% '340 = "E0 + /racute + /aacute + /acircumflex + /abreve + /adieresis + /lacute + /cacute + /ccedilla +%%%%% '350 = "E8 + /ccaron + /eacute + /eogonek + /edieresis + /ecaron + /iacute + /icircumflex + /dcaron +%%%%% '360 = "F0 + /eth + /nacute + /ncaron + /oacute + /ocircumflex + /ohungarumlaut + /odieresis + /divide +%%%%% '370 = "F8 + /rcaron + /uring + /uacute + /uhungarumlaut + /udieresis + /yacute + /quotedblbase + /quotedblleft +] def + +% LIGKERN quoteleft quoteleft =: quotedblleft ; +% LIGKERN quoteright quoteright =: quotedblright ; +% LIGKERN exclamdown exclamdown =: guillemotleft ; +% frenchdblquotes +% LIGKERN questiondown questiondown =: guillemotright ; +% csquoteleft +% LIGKERN comma comma =: quotedblbase ; +% LIGKERN space {} * ; * {} space ; zero {} * ; * {} zero ; +% LIGKERN one {} * ; * {} one ; two {} * ; * {} two ; +% LIGKERN three {} * ; * {} three ; four {} * ; * {} four ; +% LIGKERN five {} * ; * {} five ; six {} * ; * {} six ; +% LIGKERN seven {} * ; * {} seven ; eight {} * ; * {} eight ; +% LIGKERN nine {} * ; * {} nine ; +% LIGKERN question {} quoteleft ; exclam {} quoteleft ; +% LIGKERN f {} f ; f {} i ; f {} l ; |