w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

afm2pl.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <math.h>
Include dependency graph for afm2pl.c:

Go to the source code of this file.

Classes

struct  lig
 
struct  kern
 
struct  adobeinfo
 
struct  encoding
 
struct  nstrings
 

Macros

#define buflen   256
 
#define ISALNUM(c)   (isascii (c) && isalnum(c))
 
#define FontName   (0)
 
#define ItalicAngle   (1)
 
#define IsFixedPitch   (2)
 
#define XHeight   (3)
 
#define C   (4)
 
#define KPX   (5)
 
#define EncodingScheme   (6)
 
#define StartCharMetrics   (7)
 
#define CharWidth   (8)
 
#define NONE   (-1)
 
#define plout(s)   fprintf(outfile, s)
 
#define ploutln(str)   {fprintf(outfile,"%s\n",str);pllevout();}
 
#define ploutln2(f, s)   {fprintf(outfile,f,s);pllevnlout();}
 
#define ploutln3(f, a, b)   {fprintf(outfile,f,a,b);pllevnlout();}
 
#define ploutln4(f, a, b, c)   {fprintf(outfile,f,a,b,c);pllevnlout();}
 
#define USAGE   "\Convert an Adobe font metric file to a TeX font property list.\n\\n\-p ENCFILE Read/download ENCFILE for the PostScript encoding\n\-o Use octal for all character codes in the pl file\n\-e REAL Widen (extend) characters by a factor of REAL\n\-s REAL Oblique (slant) characters by REAL, generally <<1\n\-m INTEGER Letterspace by INTEGER/1000 em\n\-V Verbose output; i.e. report on missing glyphs\n\--help Print this message and exit.\n\--version Print version number and exit.\n\n\See the man page for full documentation.\n\n\"
 
#define CHECKARG3   if (argc < 3) { afm2pl_usage(stderr); exit(1); }
 

Typedefs

typedef int integer
 
typedef char boolean
 
typedef short Boolean
 

Enumerations

enum  kpse_file_format_type {
  kpse_afm_format , kpse_lig_format , kpse_enc_format , kpse_gf_format ,
  kpse_pk_format , kpse_any_glyph_format , kpse_tfm_format , kpse_afm_format ,
  kpse_base_format , kpse_bib_format , kpse_bst_format , kpse_cnf_format ,
  kpse_db_format , kpse_fmt_format , kpse_fontmap_format , kpse_mem_format ,
  kpse_mf_format , kpse_mfpool_format , kpse_mft_format , kpse_mp_format ,
  kpse_mppool_format , kpse_mpsupport_format , kpse_ocp_format , kpse_ofm_format ,
  kpse_opl_format , kpse_otp_format , kpse_ovf_format , kpse_ovp_format ,
  kpse_pict_format , kpse_tex_format , kpse_texdoc_format , kpse_texpool_format ,
  kpse_texsource_format , kpse_tex_ps_header_format , kpse_troff_font_format , kpse_type1_format ,
  kpse_vf_format , kpse_dvips_config_format , kpse_ist_format , kpse_truetype_format ,
  kpse_type42_format , kpse_web2c_format , kpse_program_text_format , kpse_program_binary_format ,
  kpse_miscfonts_format , kpse_web_format , kpse_cweb_format , kpse_enc_format ,
  kpse_cmap_format , kpse_sfd_format , kpse_opentype_format , kpse_pdftex_config_format ,
  kpse_lig_format , kpse_texmfscripts_format , kpse_lua_format , kpse_fea_format ,
  kpse_cid_format , kpse_mlbib_format , kpse_mlbst_format , kpse_clua_format ,
  kpse_ris_format , kpse_bltxml_format , kpse_last_format , kpse_gf_format ,
  kpse_pk_format , kpse_any_glyph_format , kpse_tfm_format , kpse_afm_format ,
  kpse_base_format , kpse_bib_format , kpse_bst_format , kpse_cnf_format ,
  kpse_db_format , kpse_fmt_format , kpse_fontmap_format , kpse_mem_format ,
  kpse_mf_format , kpse_mfpool_format , kpse_mft_format , kpse_mp_format ,
  kpse_mppool_format , kpse_mpsupport_format , kpse_ocp_format , kpse_ofm_format ,
  kpse_opl_format , kpse_otp_format , kpse_ovf_format , kpse_ovp_format ,
  kpse_pict_format , kpse_tex_format , kpse_texdoc_format , kpse_texpool_format ,
  kpse_texsource_format , kpse_tex_ps_header_format , kpse_troff_font_format , kpse_type1_format ,
  kpse_vf_format , kpse_dvips_config_format , kpse_ist_format , kpse_truetype_format ,
  kpse_type42_format , kpse_web2c_format , kpse_program_text_format , kpse_program_binary_format ,
  kpse_miscfonts_format , kpse_web_format , kpse_cweb_format , kpse_enc_format ,
  kpse_cmap_format , kpse_sfd_format , kpse_opentype_format , kpse_pdftex_config_format ,
  kpse_lig_format , kpse_texmfscripts_format , kpse_lua_format , kpse_fea_format ,
  kpse_cid_format , kpse_mlbib_format , kpse_mlbst_format , kpse_clua_format ,
  kpse_ris_format , kpse_bltxml_format , kpse_last_format , kpse_gf_format ,
  kpse_pk_format , kpse_any_glyph_format , kpse_tfm_format , kpse_afm_format ,
  kpse_base_format , kpse_bib_format , kpse_bst_format , kpse_cnf_format ,
  kpse_db_format , kpse_fmt_format , kpse_fontmap_format , kpse_mem_format ,
  kpse_mf_format , kpse_mfpool_format , kpse_mft_format , kpse_mp_format ,
  kpse_mppool_format , kpse_mpsupport_format , kpse_ocp_format , kpse_ofm_format ,
  kpse_opl_format , kpse_otp_format , kpse_ovf_format , kpse_ovp_format ,
  kpse_pict_format , kpse_tex_format , kpse_texdoc_format , kpse_texpool_format ,
  kpse_texsource_format , kpse_tex_ps_header_format , kpse_troff_font_format , kpse_type1_format ,
  kpse_vf_format , kpse_dvips_config_format , kpse_ist_format , kpse_truetype_format ,
  kpse_type42_format , kpse_web2c_format , kpse_program_text_format , kpse_program_binary_format ,
  kpse_miscfonts_format , kpse_web_format , kpse_cweb_format , kpse_enc_format ,
  kpse_cmap_format , kpse_sfd_format , kpse_opentype_format , kpse_pdftex_config_format ,
  kpse_lig_format , kpse_texmfscripts_format , kpse_lua_format , kpse_fea_format ,
  kpse_cid_format , kpse_mlbib_format , kpse_mlbst_format , kpse_clua_format ,
  kpse_ris_format , kpse_bltxml_format , kpse_last_format
}
 

Functions

static void error (const char *s)
 
static char * mymalloc (unsigned long len)
 
static char * newstring (const char *s)
 
static struct adobeinfofindname (struct adobeinfo **achars, int n, const char *p)
 
static struct adobeinfofindadobe (const char *p)
 
static struct adobeinfofindtfm (const char *p)
 
static int findindex (const char *p)
 
static int transform (int x, int y)
 
static int texlive_getline (void)
 
static char * concat (const char *s1, const char *s2)
 
static const char * find_suffix (const char *name)
 
static const char * xbasename (const char *name)
 
static const char * openin (const char *fname, kpse_file_format_type format, const char *ext)
 
static const char * openout (const char *fname, int based_on, const char *outext)
 
static int interest (char *s)
 
static char * paramnewstring (void)
 
static char * paramstring (void)
 
static int paramnum (void)
 
static float paramfloat (void)
 
static void expect (const char *s)
 
static struct adobeinfonewchar (void)
 
static struct kernnewkern (void)
 
static struct lignewlig (void)
 
static void handlechar (void)
 
static void handlekern (void)
 
static void readadobe (void)
 
static void changeadobe (void)
 
static char * gettoken (void)
 
static void readencoding (void)
 
static void copykerns (char *s1, char *s2)
 
static void adobermkern (struct adobeinfo *ai, char *s2)
 
static void rmkern (char *s1, char *s2)
 
static void set_rboundarychar (int bch)
 
static void checkligkern (char *s, int isencfile)
 
static void letterspace (void)
 
static void extraligkerninfo (void)
 
static void spaceparms (void)
 
static void pllevout (void)
 
static void pllevnlout (void)
 
static void plleft (void)
 
static void plright (void)
 
static char * plchar (int c)
 
static char * plname (int c)
 
static void writepl (void)
 
static void version (FILE *f)
 
static void afm2pl_usage (FILE *f)
 
 if (q)
 

Variables

char buffer [256]
 
char obuffer [256]
 
char * param = dp
 
const char * fontname = "Unknown"
 
struct encodingafmencoding = NULL
 
struct encodingoutencoding = NULL
 
const char * ligoption = "1"
 
const char * Ligoption = "1"
 
int based_on
 
int no_prefix = 0
 
FILEinfile
 
FILEoutfile
 
const char * afmname
 
const char * outname
 
const char * encfilename
 
struct nstringsligfilenames
 
struct nstringsLigfilenames
 
const char * ligfilename
 
struct adobeinfo ** adobechars
 
struct adobeinfotfmptrs [256]
 
int tfmnext [256]
 
int iglyph
 
int nglyphs
 
int nglyphsb
 
float italicangle = 0.0
 
float newslant = 0.0
 
int fixedpitch
 
int afm2tfm_compat = 0
 
int xheight = 0
 
int fontspace = -1
 
int fstretch = -1
 
int fshrink = -1
 
int fextra = -1
 
int fquad = -1
 
int charwidth = 0
 
float efactor = 1.0
 
float slant = 0.0
 
int lspace = 0
 
char * efactorparam
 
char * slantparam
 
char * lspaceparam
 
int forceoctal = 0
 
int keepligs = 0
 
int rboundarychar = -1
 
const char * boundaryname = "||"
 
struct adobeinforbound
 
struct adobeinfolbound
 
char * boundglyph = NULL
 
int missingchars = 0
 
int verbose = 0
 
const char * interesting []
 
char smbuffer [100]
 
const char * plligops []
 
const char * encligops []
 
int sawligkern
 
int lig_it
 
int level
 
char plcharbuf [6]
 
char plnamebuf [100]
 
 p = newstring (xbasename (afmname))
 
 q = find_suffix (p)
 

Macro Definition Documentation

◆ buflen

#define buflen   256

global vars

Definition at line 181 of file afm2pl.c.

◆ C

#define C   (4)

Definition at line 546 of file afm2pl.c.

◆ CharWidth

#define CharWidth   (8)

Definition at line 550 of file afm2pl.c.

◆ CHECKARG3

#define CHECKARG3   if (argc < 3) { afm2pl_usage(stderr); exit(1); }

◆ EncodingScheme

Definition at line 548 of file afm2pl.c.

◆ FontName

#define FontName   (0)

Definition at line 542 of file afm2pl.c.

◆ ISALNUM

#define ISALNUM (   c)    (isascii (c) && isalnum(c))

Definition at line 427 of file afm2pl.c.

◆ IsFixedPitch

#define IsFixedPitch   (2)

Definition at line 544 of file afm2pl.c.

◆ ItalicAngle

#define ItalicAngle   (1)

Definition at line 543 of file afm2pl.c.

◆ KPX

#define KPX   (5)

Definition at line 547 of file afm2pl.c.

◆ NONE

#define NONE   (-1)

Definition at line 551 of file afm2pl.c.

◆ plout

#define plout (   s)    fprintf(outfile, s)

debug output of adobeinfo structs the PL file.

Definition at line 1693 of file afm2pl.c.

◆ ploutln

#define ploutln (   str)    {fprintf(outfile,"%s\n",str);pllevout();}

Definition at line 1713 of file afm2pl.c.

◆ ploutln2

#define ploutln2 (   f,
  s 
)    {fprintf(outfile,f,s);pllevnlout();}

Definition at line 1714 of file afm2pl.c.

◆ ploutln3

#define ploutln3 (   f,
  a,
  b 
)    {fprintf(outfile,f,a,b);pllevnlout();}

Definition at line 1715 of file afm2pl.c.

◆ ploutln4

#define ploutln4 (   f,
  a,
  b,
  c 
)    {fprintf(outfile,f,a,b,c);pllevnlout();}

Definition at line 1716 of file afm2pl.c.

◆ StartCharMetrics

#define StartCharMetrics   (7)

Definition at line 549 of file afm2pl.c.

◆ USAGE

#define USAGE   "\Convert an Adobe font metric file to a TeX font property list.\n\\n\-p ENCFILE Read/download ENCFILE for the PostScript encoding\n\-o Use octal for all character codes in the pl file\n\-e REAL Widen (extend) characters by a factor of REAL\n\-s REAL Oblique (slant) characters by REAL, generally <<1\n\-m INTEGER Letterspace by INTEGER/1000 em\n\-V Verbose output; i.e. report on missing glyphs\n\--help Print this message and exit.\n\--version Print version number and exit.\n\n\See the man page for full documentation.\n\n\"

Definition at line 2006 of file afm2pl.c.

◆ XHeight

#define XHeight   (3)

Definition at line 545 of file afm2pl.c.

Typedef Documentation

◆ boolean

typedef char boolean

Definition at line 121 of file afm2pl.c.

◆ Boolean

typedef short Boolean

Definition at line 128 of file afm2pl.c.

◆ integer

typedef int integer

includes, defines, system

Definition at line 117 of file afm2pl.c.

Enumeration Type Documentation

◆ kpse_file_format_type

file handling

Enumerator
kpse_afm_format 
kpse_lig_format 
kpse_enc_format 
kpse_gf_format 
kpse_pk_format 
kpse_any_glyph_format 
kpse_tfm_format 
kpse_afm_format 
kpse_base_format 
kpse_bib_format 
kpse_bst_format 
kpse_cnf_format 
kpse_db_format 
kpse_fmt_format 
kpse_fontmap_format 
kpse_mem_format 
kpse_mf_format 
kpse_mfpool_format 
kpse_mft_format 
kpse_mp_format 
kpse_mppool_format 
kpse_mpsupport_format 
kpse_ocp_format 
kpse_ofm_format 
kpse_opl_format 
kpse_otp_format 
kpse_ovf_format 
kpse_ovp_format 
kpse_pict_format 
kpse_tex_format 
kpse_texdoc_format 
kpse_texpool_format 
kpse_texsource_format 
kpse_tex_ps_header_format 
kpse_troff_font_format 
kpse_type1_format 
kpse_vf_format 
kpse_dvips_config_format 
kpse_ist_format 
kpse_truetype_format 
kpse_type42_format 
kpse_web2c_format 
kpse_program_text_format 
kpse_program_binary_format 
kpse_miscfonts_format 
kpse_web_format 
kpse_cweb_format 
kpse_enc_format 
kpse_cmap_format 
kpse_sfd_format 
kpse_opentype_format 
kpse_pdftex_config_format 
kpse_lig_format 
kpse_texmfscripts_format 
kpse_lua_format 
kpse_fea_format 
kpse_cid_format 
kpse_mlbib_format 
kpse_mlbst_format 
kpse_clua_format 
kpse_ris_format 
kpse_bltxml_format 
kpse_last_format 
kpse_gf_format 
kpse_pk_format 
kpse_any_glyph_format 
kpse_tfm_format 
kpse_afm_format 
kpse_base_format 
kpse_bib_format 
kpse_bst_format 
kpse_cnf_format 
kpse_db_format 
kpse_fmt_format 
kpse_fontmap_format 
kpse_mem_format 
kpse_mf_format 
kpse_mfpool_format 
kpse_mft_format 
kpse_mp_format 
kpse_mppool_format 
kpse_mpsupport_format 
kpse_ocp_format 
kpse_ofm_format 
kpse_opl_format 
kpse_otp_format 
kpse_ovf_format 
kpse_ovp_format 
kpse_pict_format 
kpse_tex_format 
kpse_texdoc_format 
kpse_texpool_format 
kpse_texsource_format 
kpse_tex_ps_header_format 
kpse_troff_font_format 
kpse_type1_format 
kpse_vf_format 
kpse_dvips_config_format 
kpse_ist_format 
kpse_truetype_format 
kpse_type42_format 
kpse_web2c_format 
kpse_program_text_format 
kpse_program_binary_format 
kpse_miscfonts_format 
kpse_web_format 
kpse_cweb_format 
kpse_enc_format 
kpse_cmap_format 
kpse_sfd_format 
kpse_opentype_format 
kpse_pdftex_config_format 
kpse_lig_format 
kpse_texmfscripts_format 
kpse_lua_format 
kpse_fea_format 
kpse_cid_format 
kpse_mlbib_format 
kpse_mlbst_format 
kpse_clua_format 
kpse_ris_format 
kpse_bltxml_format 
kpse_last_format 
kpse_gf_format 
kpse_pk_format 
kpse_any_glyph_format 
kpse_tfm_format 
kpse_afm_format 
kpse_base_format 
kpse_bib_format 
kpse_bst_format 
kpse_cnf_format 
kpse_db_format 
kpse_fmt_format 
kpse_fontmap_format 
kpse_mem_format 
kpse_mf_format 
kpse_mfpool_format 
kpse_mft_format 
kpse_mp_format 
kpse_mppool_format 
kpse_mpsupport_format 
kpse_ocp_format 
kpse_ofm_format 
kpse_opl_format 
kpse_otp_format 
kpse_ovf_format 
kpse_ovp_format 
kpse_pict_format 
kpse_tex_format 
kpse_texdoc_format 
kpse_texpool_format 
kpse_texsource_format 
kpse_tex_ps_header_format 
kpse_troff_font_format 
kpse_type1_format 
kpse_vf_format 
kpse_dvips_config_format 
kpse_ist_format 
kpse_truetype_format 
kpse_type42_format 
kpse_web2c_format 
kpse_program_text_format 
kpse_program_binary_format 
kpse_miscfonts_format 
kpse_web_format 
kpse_cweb_format 
kpse_enc_format 
kpse_cmap_format 
kpse_sfd_format 
kpse_opentype_format 
kpse_pdftex_config_format 
kpse_lig_format 
kpse_texmfscripts_format 
kpse_lua_format 
kpse_fea_format 
kpse_cid_format 
kpse_mlbib_format 
kpse_mlbst_format 
kpse_clua_format 
kpse_ris_format 
kpse_bltxml_format 
kpse_last_format 

Definition at line 371 of file afm2pl.c.

Function Documentation

◆ adobermkern()

static void adobermkern ( struct adobeinfo ai,
char *  s2 
)
static

Definition at line 1235 of file afm2pl.c.

References boundaryname, boundglyph, first, k, adobeinfo::kerns, kern::next, s2, and strcmp().

Referenced by rmkern().

◆ afm2pl_usage()

static void afm2pl_usage ( FILE f)
static

Definition at line 2021 of file afm2pl.c.

References f, fputs, and USAGE.

◆ changeadobe()

◆ checkligkern()

◆ concat()

◆ copykerns()

static void copykerns ( char *  s1,
char *  s2 
)
static

◆ error()

static void error ( const char *  s)
static

general utility functions

Definition at line 245 of file afm2pl.c.

References exit(), fprintf, obuffer, param, s, and void.

Referenced by checkligkern(), expect(), gettoken(), handlechar(), handlekern(), mymalloc(), openin(), openout(), paramfloat(), paramnum(), readencoding(), set_rboundarychar(), and writepl().

◆ expect()

static void expect ( const char *  s)
static

Definition at line 636 of file afm2pl.c.

References error(), fprintf, paramstring(), s, strcmp(), and void.

Referenced by handlechar().

◆ extraligkerninfo()

◆ find_suffix()

static const char* find_suffix ( const char *  name)
static

◆ findadobe()

static struct adobeinfo* findadobe ( const char *  p)
static

◆ findindex()

static int findindex ( const char *  p)
static

Definition at line 319 of file afm2pl.c.

References adobechars, adobeinfo::adobename, i, nglyphs, p, and strcmp().

Referenced by letterspace().

◆ findname()

static struct adobeinfo* findname ( struct adobeinfo **  achars,
int  n,
const char *  p 
)
static

Definition at line 291 of file afm2pl.c.

References adobeinfo::adobename, i, n, NULL, p, and strcmp().

Referenced by findadobe(), and findtfm().

◆ findtfm()

static struct adobeinfo* findtfm ( const char *  p)
static

Definition at line 312 of file afm2pl.c.

References findname(), p, and tfmptrs.

Referenced by writepl().

◆ gettoken()

static char* gettoken ( void  )
static

Definition at line 962 of file afm2pl.c.

References error(), p, param, q, smbuffer, and texlive_getline().

Referenced by readencoding().

◆ handlechar()

◆ handlekern()

static void handlekern ( void  )
static

Definition at line 740 of file afm2pl.c.

References error(), findadobe(), adobeinfo::kerns, newkern(), newstring(), nk, p, paramnum(), paramstring(), and sc.

Referenced by readadobe().

◆ if()

if ( q   )

Definition at line 2288 of file afm2pl.c.

◆ interest()

static int interest ( char *  s)
static

Definition at line 553 of file afm2pl.c.

References interesting, n, NONE, p, s, and strcmp().

Referenced by readadobe().

◆ letterspace()

static void letterspace ( void  )
static

Definition at line 1475 of file afm2pl.c.

References adobechars, adobeinfo::adobename, findindex(), fontspace, free, i, j, k, adobeinfo::kerns, lspace, malloc, newkern(), and nglyphs.

Referenced by extraligkerninfo().

◆ mymalloc()

static char* mymalloc ( unsigned long  len)
static

Definition at line 264 of file afm2pl.c.

References error(), i, len, malloc, NULL, and p.

Referenced by newchar(), newkern(), newlig(), newstring(), readadobe(), and readencoding().

◆ newchar()

◆ newkern()

static struct kern* newkern ( void  )
static

Definition at line 670 of file afm2pl.c.

References mymalloc(), nk, and NULL.

Referenced by copykerns(), handlekern(), letterspace(), and readttf_kern().

◆ newlig()

static struct lig* newlig ( void  )
static

Definition at line 682 of file afm2pl.c.

References mymalloc(), nl, and NULL.

Referenced by checkligkern(), and handlechar().

◆ newstring()

◆ openin()

static const char* openin ( const char *  fname,
kpse_file_format_type  format,
const char *  ext 
)
static

◆ openout()

static const char* openout ( const char *  fname,
int  based_on,
const char *  outext 
)
static

Definition at line 499 of file afm2pl.c.

References based_on, concat(), error(), find_suffix(), fname, fopen, newstring(), NULL, outfile, q, strcmp(), and xbasename().

Referenced by writepl().

◆ paramfloat()

static float paramfloat ( void  )
static

Definition at line 624 of file afm2pl.c.

References error(), i, p, paramstring(), and sscanf().

Referenced by readadobe().

◆ paramnewstring()

static char* paramnewstring ( void  )
static

Definition at line 575 of file afm2pl.c.

References newstring(), p, param, and q.

Referenced by handlechar(), and readadobe().

◆ paramnum()

static int paramnum ( void  )
static

Definition at line 612 of file afm2pl.c.

References error(), i, p, paramstring(), and sscanf().

Referenced by handlechar(), handlekern(), and readadobe().

◆ paramstring()

static char* paramstring ( void  )
static

Definition at line 595 of file afm2pl.c.

References p, param, and q.

Referenced by checkligkern(), expect(), handlekern(), paramfloat(), paramnum(), and readadobe().

◆ plchar()

static char* plchar ( int  c)
static

Definition at line 1743 of file afm2pl.c.

References c, forceoctal, ISALNUM, plcharbuf, sprintf, and void.

Referenced by writepl().

◆ plleft()

static void plleft ( void  )
static

Definition at line 1720 of file afm2pl.c.

References level, and plout.

Referenced by writepl().

◆ pllevnlout()

static void pllevnlout ( void  )
static

Definition at line 1707 of file afm2pl.c.

References pllevout(), and plout.

◆ pllevout()

static void pllevout ( void  )
static

Definition at line 1698 of file afm2pl.c.

References cutout::l, level, and plout.

Referenced by pllevnlout().

◆ plname()

static char* plname ( int  c)
static

Definition at line 1762 of file afm2pl.c.

References c, forceoctal, ISALNUM, plnamebuf, sprintf, and tfmptrs.

Referenced by writepl().

◆ plright()

static void plright ( void  )
static

Definition at line 1728 of file afm2pl.c.

References level, and ploutln.

Referenced by writepl().

◆ readadobe()

◆ readencoding()

◆ rmkern()

static void rmkern ( char *  s1,
char *  s2 
)
static

Definition at line 1265 of file afm2pl.c.

References adobechars, adobermkern(), boundaryname, findadobe(), i, adobeinfo::kerns, lbound, nglyphs, NULL, s1, s2, and strcmp().

Referenced by checkligkern().

◆ set_rboundarychar()

◆ spaceparms()

static void spaceparms ( void  )
static

Definition at line 1615 of file afm2pl.c.

References fextra, fixedpitch, fontspace, fshrink, and fstretch.

◆ texlive_getline()

static int texlive_getline ( void  )
static

Definition at line 339 of file afm2pl.c.

References buffer, buflen, c, EOF, getc, infile, obuffer, p, param, strcpy(), and void.

Referenced by extraligkerninfo(), get_replacements(), gettoken(), readadobe(), and readencoding().

◆ transform()

static int transform ( int  x,
int  y 
)
static

Definition at line 330 of file afm2pl.c.

References acc, ceil(), efactor, floor, slant, cordic::x, and y.

Referenced by changeadobe().

◆ version()

static void version ( FILE f)
static

(version and) usage

Definition at line 1992 of file afm2pl.c.

References f, fprintf, fputs, and kpathsea_version_string.

◆ writepl()

◆ xbasename()

Variable Documentation

◆ adobechars

◆ afm2tfm_compat

int afm2tfm_compat = 0

Definition at line 212 of file afm2pl.c.

Referenced by changeadobe(), and writepl().

◆ afmencoding

struct encoding* afmencoding = NULL

Definition at line 188 of file afm2pl.c.

Referenced by handlechar(), readadobe(), and readencoding().

◆ afmname

const char* afmname

Definition at line 195 of file afm2pl.c.

Referenced by LoadKerningDataFromAmfm(), main(), readadobe(), readconfig(), and readmetrics().

◆ based_on

int based_on

Definition at line 192 of file afm2pl.c.

Referenced by openout(), and writepl().

◆ boundaryname

const char* boundaryname = "||"

Definition at line 228 of file afm2pl.c.

Referenced by adobermkern(), changeadobe(), checkligkern(), copykerns(), and rmkern().

◆ boundglyph

char* boundglyph = NULL

Definition at line 230 of file afm2pl.c.

Referenced by adobermkern(), checkligkern(), copykerns(), and set_rboundarychar().

◆ buffer

char buffer[256]

Definition at line 182 of file afm2pl.c.

Referenced by texlive_getline().

◆ charwidth

int charwidth = 0

◆ efactor

float efactor = 1.0

Definition at line 221 of file afm2pl.c.

Referenced by changeadobe(), main(), transform(), and writepl().

◆ efactorparam

char* efactorparam

Definition at line 223 of file afm2pl.c.

◆ encfilename

const char* encfilename

Definition at line 196 of file afm2pl.c.

Referenced by extraligkerninfo(), and readencoding().

◆ encligops

const char* encligops[]
Initial value:
= {
"=:", "|=:", "|=:>", "=:|", "=:|>", "|=:|", "|=:|>", "|=:|>>", 0
}

Definition at line 1146 of file afm2pl.c.

Referenced by checkligkern().

◆ fextra

int fextra = -1

Definition at line 217 of file afm2pl.c.

Referenced by changeadobe(), spaceparms(), and writepl().

◆ fixedpitch

int fixedpitch

Definition at line 211 of file afm2pl.c.

Referenced by changeadobe(), handlechar(), readadobe(), and spaceparms().

◆ fontname

const char * fontname = "Unknown"

Definition at line 186 of file afm2pl.c.

Referenced by _GetModifiers(), add_fontname(), FontMap::append(), SVGTree::append(), GlyphTracerMessages::beginChar(), bitmap_all_find(), bitmap_enc_load(), bitmap_enc_search(), bmenc_warn(), cff_get_name(), CheckMMAfmFile(), cid_flush_all(), cidbase_get_id(), cidbase_start_font_descriptor(), CIDFont_base_open(), CIDFont_type0_open(), CIDFont_type0_open_from_t1(), CIDFont_type0_open_from_t1c(), CIDFont_type0_t1create_ToUnicode_stream(), CIDFont_type2_open(), VFReader::cmdFontDef(), DVIReader::cmdFontDef(), DVIReader::cmdXFontDef(), create_font(), createAnnotDrawFont(), do_pfb_header(), DumpGlyphToNameMap(), ff_info(), ff_open(), FindPSFontMap(), FindResourceTtfFont(), FindSubFont(), fmlookup(), Font::fontMapEntry(), get_font_attr(), getenc(), getencoding_seq(), getfigFontnumber(), getFontNumber(), getSubStringFontNumber(), GuessStyle(), HtmlFont::HtmlFont(), IsResourceForkFile(), kpathsea_find_glyph(), FontMap::lockFont(), FontMap::lookup(), main(), mangle_fontname(), FontMapper::mapFont(), parse_header(), parseencodingfile(), pdf_flush_font(), pdf_font_load_font(), pdf_font_load_type1(), pdf_font_load_type1c(), pdf_font_open_truetype(), pdf_font_open_type0(), pdf_font_open_type1(), pdf_font_open_type1c(), pfb_find_name(), pfb_get_id(), pfb_release(), print_afm(), print_encoding(), ps2pk_postamble(), FontMetrics::read(), readadobe(), readcfftopdict(), ReadPSFont(), FontManager::registerFont(), FontMap::remove(), FontMap::replace(), search_flifile(), SearchPSFontMap(), SearchTtfResourcesFile(), DVIToSVGActions::setChar(), SFDefaultOS2Info(), drvFIG::show_text(), drvLATEX2E::show_text(), drvPIC::show_text(), split_fontname(), t1_get_fontname(), try_fallback_resolutions(), try_fontmap(), try_resolution(), try_size(), tt_get_fontdesc(), ttf_get_id(), ttf_release(), type0_font(), Type0Font_attach_ToUnicode_stream(), update_autofont_map(), validate_name(), write_cff(), WriteFontName(), writepk(), writet3(), WriteTTFFont(), and WriteWOFFFont().

◆ fontspace

int fontspace = -1

Definition at line 214 of file afm2pl.c.

Referenced by changeadobe(), letterspace(), spaceparms(), and writepl().

◆ forceoctal

int forceoctal = 0

Definition at line 224 of file afm2pl.c.

Referenced by plchar(), plname(), vchar(), vname(), and writevpl().

◆ fquad

int fquad = -1

Definition at line 218 of file afm2pl.c.

Referenced by changeadobe(), tfmidx(), and writepl().

◆ fshrink

int fshrink = -1

Definition at line 216 of file afm2pl.c.

Referenced by changeadobe(), font_from_lua(), setexpansion(), spaceparms(), and writepl().

◆ fstretch

int fstretch = -1

Definition at line 215 of file afm2pl.c.

Referenced by changeadobe(), font_from_lua(), setexpansion(), spaceparms(), and writepl().

◆ iglyph

int iglyph

Definition at line 208 of file afm2pl.c.

Referenced by handlechar(), and readadobe().

◆ infile

static void infile

Definition at line 194 of file afm2pl.c.

Referenced by extraligkerninfo(), openin(), readadobe(), readencoding(), and texlive_getline().

◆ interesting

const char* interesting[]
Initial value:
= { "FontName", "ItalicAngle", "IsFixedPitch",
"XHeight", "C", "KPX", "EncodingScheme",
"StartCharMetrics", "CharWidth", NULL
}
#define NULL
Definition: ftobjs.h:61

reading the afm

Definition at line 538 of file afm2pl.c.

Referenced by interest().

◆ italicangle

float italicangle = 0.0

Definition at line 209 of file afm2pl.c.

Referenced by changeadobe(), get_font_attr(), and readadobe().

◆ keepligs

int keepligs = 0

Definition at line 225 of file afm2pl.c.

Referenced by changeadobe(), and extraligkerninfo().

◆ lbound

struct adobeinfo * lbound

Definition at line 229 of file afm2pl.c.

Referenced by changeadobe(), checkligkern(), copykerns(), rmkern(), and writepl().

◆ level

int level

Definition at line 1694 of file afm2pl.c.

Referenced by _cairo_ps_surface_emit_header(), _hb_debug(), _hb_debug_msg(), _hb_debug_msg_va(), _parseString(), _synctex_log(), ErrorHandler::account(), ErrorVeneer::account(), BailErrorHandler::account(), JustifyTotal::accumulate(), ParagraphLayout::appendRun(), bracketProcessB(), bracketProcessChar(), bracketProcessLRI_RLI(), BrotliSetDepth(), cairo_ps_level_to_string(), cairo_ps_surface_restrict_to_level(), capture_to_close(), checkExplicitLevels(), compress2(), ParagraphLayout::computeLevels(), convert1(), convertToPSEmbed(), cp_decl_func(), cqcellTreeCreate(), cqcellTreeDestroy(), db_getlocal(), db_setlocal(), db_traceback(), deflateInit2_(), deflateInit_(), deflateParams(), diagnostics(), do_args(), do_outline(), draw_composite_glyf(), FcCacheInsert(), Plotter::filltype(), findfield(), CollationBuilder::findOrInsertWeakNode(), fscope_uvmark(), ft_validator_init(), get_ofm(), getfilename(), getfunc(), graphite2::Slot::getJustify(), getOctcubeIndices(), GlobalParams::getPSLevel(), getRGBFromOctcube(), getSingleRun(), gettext(), CollationBuilder::getWeight16Before(), gzsetparams(), idxread(), MessageStream::indent(), interp(), kpathsea_set_program_enabled(), l_set_node_data(), Error::level2str(), lj_cf_error(), lj_cf_getfenv(), lj_cf_setfenv(), lj_debug_frame(), lj_func_closeuv(), loggerDispose(), loggerFinish(), loggerLogSDS(), loggerStart(), loggerStartSDS(), lua_getstack(), lua_nodelib_direct_getfield(), lua_nodelib_direct_setfield(), lua_nodelib_fast_getfield(), lua_nodelib_fast_setfield(), luaB_error(), luaF_close(), luaF_findupval(), luaK_patchclose(), luaL_traceback(), luaL_where(), lzlib_compress(), lzlib_deflate(), main(), markupval(), Mpost_UnQuantZigBlock(), Mpost_UnQuantZigBlockLaplace(), mrb_basicsocket_getsockopt(), mrb_basicsocket_setsockopt(), mrb_kpse_set_program_enabled(), msg_out(), msListBlock(), mtxLevel(), HtmlOutputDev::newHtmlOutlineLevel(), octcubeGetCount(), octreeFindColorCell(), octreeGenerateAndPrune(), ofm_get_arrays(), ofm_get_sizes(), opt_get(), opt_getboolean(), opt_getint(), opt_ip6_setmembership(), opt_set(), opt_setboolean(), opt_setint(), opt_setmembership(), otfcc_Options_optimizeTo(), ParagraphLayout::ParagraphLayout(), CollationRuleParser::parseUnicodeSet(), pdf_obj_set_compression(), pdf_out_set_compression(), peek_dir(), pixAssignToNearestColor(), pixcmapToOctcubeLUT(), pixConvertRGBToColormap(), pixFixedOctcubeQuant(), pixFixedOctcubeQuantCmap(), pixFixedOctcubeQuantRGB(), pixMorphSequence(), pixOctcubeHistogram(), pixReduceRankBinary2(), plleft(), pllevout(), plright(), png_deflate_claim(), png_set_compression_level(), png_set_text_compression_level(), PopLevels(), prepareReorder(), print_file_line(), processPropertySeq(), random_level(), JPXStream::readTilePart(), JPXStream::readTilePartData(), reduceRankBinary2Low(), removedyncap(), resolveBaseDirection(), resolveExplicitLevels(), roffListBlock(), roffListItem(), CMapReader::Token::scan(), scan_extdef_del_code(), scan_extdef_math_code(), scan_glue(), scan_something_internal(), set_math_code(), set_ofm_level(), graphite2::Slot::setBidiLevel(), setcatcode(), setcode(), setdelcode(), graphite2::Slot::setJustify(), setLevelsOutsideIsolates(), setmathcode(), GlobalParams::setPSLevel(), Error::sev(), short_scan_something_internal(), sort_edges(), spc_handler_pdfm_outline(), start_capture(), styread(), TraceData(), twalk(), ubidi_getRuns_68(), ubidi_setLine_68(), ubidi_setPara_68(), UnQuantZig(), utrace_data_68(), utrace_setLevel_68(), FontManager::write(), writepl(), writezip(), zlib_deflateInit2_(), and zlib_deflateInit_().

◆ lig_it

int lig_it

Definition at line 1302 of file afm2pl.c.

Referenced by checkligkern(), and extraligkerninfo().

◆ ligfilename

const char* ligfilename

Definition at line 199 of file afm2pl.c.

Referenced by extraligkerninfo().

◆ ligfilenames

struct nstrings* ligfilenames

Definition at line 197 of file afm2pl.c.

Referenced by extraligkerninfo().

◆ Ligfilenames

struct nstrings* Ligfilenames

Definition at line 198 of file afm2pl.c.

Referenced by extraligkerninfo().

◆ ligoption

const char* ligoption = "1"

Definition at line 190 of file afm2pl.c.

Referenced by extraligkerninfo().

◆ Ligoption

const char* Ligoption = "1"

Definition at line 191 of file afm2pl.c.

Referenced by extraligkerninfo().

◆ lspace

int lspace = 0

Definition at line 222 of file afm2pl.c.

Referenced by changeadobe(), extraligkerninfo(), FigureStemActive(), letterspace(), and writepl().

◆ lspaceparam

char * lspaceparam

Definition at line 223 of file afm2pl.c.

◆ missingchars

int missingchars = 0

Definition at line 237 of file afm2pl.c.

Referenced by readencoding().

◆ newslant

float newslant = 0.0

Definition at line 210 of file afm2pl.c.

Referenced by changeadobe(), and writepl().

◆ nglyphs

◆ nglyphsb

int nglyphsb

Definition at line 208 of file afm2pl.c.

Referenced by readadobe(), and set_rboundarychar().

◆ no_prefix

int no_prefix = 0

Definition at line 193 of file afm2pl.c.

Referenced by openin().

◆ obuffer

char obuffer[256]

Definition at line 183 of file afm2pl.c.

Referenced by error(), texlive_getline(), and writepl().

◆ outencoding

struct encoding* outencoding = NULL

Definition at line 189 of file afm2pl.c.

Referenced by checkligkern(), readencoding(), set_rboundarychar(), and writepl().

◆ outfile

FILE * outfile

Definition at line 194 of file afm2pl.c.

Referenced by openout(), and writepl().

◆ outname

const char * outname

Definition at line 195 of file afm2pl.c.

Referenced by writepl().

◆ p

◆ param

◆ plcharbuf

char plcharbuf[6]

Definition at line 1741 of file afm2pl.c.

Referenced by plchar(), and writepl().

◆ plligops

const char* plligops[]
Initial value:
= {
"LIG", "/LIG", "/LIG>", "LIG/", "LIG/>", "/LIG/", "/LIG/>",
"/LIG/>>", 0
}

Processing extra ligkern info

When these functions are called, we have available the afm data and the raw encoding vector. changeadobe has created adobeinfos for left and right boundarychar. We use the encoding vector ONLY to translate an rboundarychar spec into an rboundarychar name. However, normally an rboundarychar will occupy an otherwise unused slot in the encoding, in which case the name is irrelevant. I don't see the point of a numeric rboundarychar specification: either one wants to use a specific character or the numeric value doesn't matter. But I allow it for backward compatibility.

extra ligkern info can come from:

  • comments in the encoding file
  • lig files. These replace the hard-coded set in afm2tfm. afm2tfm applies its own set only if the enc file contains no ligkern instructions. This is also the default behavior of afm2pl.

Typically, extra ligkern info may contain:

  • tex-specific hacks such as ‘less less =: guillemotleft’
  • deletion of space- and number kerns
  • kern accented chars as their unaccented versions
  • the f/l/i ligatures, in case they were absent from the afm.

note. afm2pl allows first copying space kerns to boundarychar kerns and then deleting the space kerns, leaving the boundarychar kerns intact.

There was a function for creating accented char ligatures. This doesn't prevent TeX from compositing accented chars so it is not very useful. In afm2tfm this function was never called and I removed it. I created a file accents.lig which may be loaded for these accent ligs but default isn't.

Definition at line 1142 of file afm2pl.c.

Referenced by writepl().

◆ plnamebuf

char plnamebuf[100]

Definition at line 1760 of file afm2pl.c.

Referenced by plname().

◆ q

struct gif_file_rec * q = find_suffix (p)

Definition at line 2287 of file afm2pl.c.

Referenced by __declspec(), __gmp_expr< mpq_t, mpq_t >::__gmp_expr(), __gmp_set_expr(), __gmpf_set_q(), __gmpn_dcpi1_div_qr(), __gmpn_dcpi1_divappr_q(), __gmpn_div_qr_1(), __gmpn_div_qr_2n_pi1(), __gmpn_div_qr_2u_pi1(), __gmpn_divexact_1(), __gmpn_divrem_1(), __gmpn_divrem_2(), __gmpn_gcdext_1(), __gmpn_gcdext_hook(), __gmpn_hgcd2(), __gmpn_hgcd2_jacobi(), __gmpn_hgcd_matrix_update_q(), __gmpn_modexact_1c_odd(), __gmpn_redc_2(), __gmpn_sbpi1_bdiv_q(), __gmpn_sbpi1_bdiv_qr(), __gmpn_sbpi1_bdiv_r(), __gmpn_sbpi1_div_q(), __gmpn_sbpi1_div_qr(), __gmpn_sbpi1_divappr_q(), __gmpn_toom6h_mul(), __gmpn_toom8h_mul(), __gmpn_toom_eval_pm2rexp(), __gmpn_trialdiv(), __gmpn_udiv_w_sdiv(), __gmpq_cmp_si(), __gmpq_get_str(), __gmpq_inp_str(), __gmpq_out_str(), __gmpq_set_f(), __gmpq_set_str(), __gmpz_divexact_gcd(), __gmpz_millerrabin(), __gmpz_probab_prime_p(), __gmpz_scan0(), __zzip_parse_root_directory(), _cairo_double_to_int64(), _cairo_double_to_uint64(), _cairo_int32_to_int128(), _cairo_int32_to_int64(), _cairo_int64_to_int128(), _cairo_svg_surface_emit_attr_value(), _cairo_traps_tessellate_convex_quad(), _cairo_uint32_to_uint128(), _cairo_uint32_to_uint64(), _cairo_uint32s_to_uint64(), _cairo_uint64_to_uint128(), _cairo_uint_96by64_32x64_divrem(), _compute_mask(), _hb_buffer_serialize_glyphs_json(), _InterpretPS(), ab_vs_cd(), add_name_general(), add_segment(), add_variable_space(), addcc(), addInObj(), addslash(), addts(), adjust_hlist(), adjust_vertices(), after_math(), agl_decompose_glyphname(), SplashOutputDev::alphaImageSrc(), alter_box_dimen(), alterneigh(), app_display(), app_space(), append_cs_return(), append_to_queue(), CollationIterator::appendNumericCEs(), asm_tail_fixup(), assign_new_hlist(), atopt(), attach_hkern_to_new_hlist(), avl_destroy(), avl_probe(), avl_t_find(), B(), basname(), bcread_block(), bcwrite_bytecode(), bcwrite_kgc(), bcwrite_proto(), begin_box(), bfgets(), Splash::blitCorrectedAlpha(), Splash::blitTransparent(), bmp_compress1_row(), box_end(), build_discretionary(), build_page(), buildgamma(), calculate_width_to_enddir(), callback_draw_getrand(), cf_encode_1d(), cf_encode_2d(), cf_put_long_run(), cff_parser_run(), change_if_limit(), char_box(), check_cmd_pattern(), check_nucleus_complexity(), check_outer_validity(), cid_to_code(), cid_to_gid(), clean_box(), close_all_files(), close_math_group(), cmp(), collapse_continuations(), combine_the_toks(), TailoredSet::compare(), TailoredSet::compareContractions(), TailoredSet::comparePrefixes(), Splash::compositeBackground(), compute_accent_skew(), concat_tokens(), conditional(), construct_command_argv_internal(), conv_toks(), copy_attribute_list(), copy_node_list(), Splash::copyGroupBackdropRow(), cs_store(), ctype_prepqual(), cvt_a_to_tmatrix(), ddist(), debugCB_print_log(), def_tounicode(), define_font(), deftounicode(), delete_last(), delete_sa_ref(), delslash(), destroy_sfd_entry(), dev_dospecial(), dev_predospecial(), div1(), div2(), Div64by32(), div_pair(), divide_scaled(), division_label(), division_ratio(), do_copy_node_list(), do_encoding(), do_exception(), do_make_math_accent(), do_marks(), do_register_command(), do_set_attribute(), do_sub_sup(), do_update(), do_variable_definition(), dobs(), ClipperLib::ClipperOffset::DoMiter(), dopar(), doPlain2(), dospecial(), dpx_file_apply_filter(), dpx_find__app__xyz(), dpx_find_agl_file(), dpx_find_cmap_file(), dpx_find_enc_file(), dpx_find_fontmap_file(), dpx_find_opentype_file(), dpx_find_sfd_file(), dpx_util_read_length(), drawable_convert_low(), Splash::drawImageArbitraryInterp(), Splash::drawImageArbitraryNoInterp(), Splash::drawImageMaskArbitraryInterp(), Splash::drawImageMaskArbitraryNoInterp(), dump_append_queue(), dump_primitives(), dvi_place_rule(), E(), EMACS_PatternMatch(), emit_fold(), end_link(), ensuresuffix(), epdf_mark_glyphs(), eps_path_short(), eps_rcoords(), eq_destroy(), __gmp_unary_increment::eval(), __gmp_unary_decrement::eval(), __gmp_unary_plus::eval(), __gmp_unary_minus::eval(), __gmp_abs_function::eval(), __gmp_binary_lshift::eval(), __gmp_binary_rshift::eval(), __gmp_binary_plus::eval(), __gmp_binary_minus::eval(), __gmp_binary_multiplies::eval(), __gmp_binary_divides::eval(), __gmp_sgn_function::eval(), __gmp_cmp_function::eval(), __gmp_binary_equal::eval(), __gmp_binary_less::eval(), eval(), GFReader::executePostamble(), expand(), expand_macros_in_tokenlist(), ext_do_line_break(), ext_post_line_break(), ext_try_break(), extend_section_name(), f_cmp_divisor(), f_cmp_fraction(), FcGetPrgname(), filter_PNG15_apply_filter(), filter_stream_decode_ASCII85Decode(), filtered_hpack(), filtered_vpackage(), fin_align(), fin_col(), fin_mlist(), find_sa_element(), CollationRootElements::findP(), U_NAMESPACE_BEGIN::findSameBlock(), U_NAMESPACE_BEGIN::findTagLength(), finish_display_alignment(), finite_shrink(), fire_up(), first_fit(), ClockMath::floorDivide(), flush_list(), flush_node_list(), flushrow(), fontmap_parse_mapdef_dpm(), FramesToMPEG(), free_node(), free_node_chain(), free_tabs(), FT_Bitmap_Blend(), FT_Bitmap_Embolden(), ft_div64by32(), FT_DivFix(), FT_Outline_EmboldenXY(), FT_Outline_Reverse(), G(), generate_mod(), geojson_lineto(), geojson_moveto(), get_cidsysinfo(), get_node(), get_tex_box_depth(), get_tex_box_height(), get_tex_box_width(), ZoneMeta::getCanonicalCLDRID(), getcc(), getcwd_fs(), getdefaults(), getdestdir(), U_NAMESPACE_BEGIN::getOverlap(), CollationRootElements::getPrimaryAfter(), CollationRootElements::getPrimaryBefore(), gettoken(), gimp_pixel_rgn_get_rect_bpc(), gimpts_drawable_extract_alpha(), gmp_millerrabin(), GOPStoMPEG(), BasicDVIReader::goToPostamble(), gray_hline(), grealloc(), gz_avail(), gz_intmax(), H(), handle_right_brace(), handle_subfont_fm(), hash_remove(), hc_put_code_proc(), hc_put_last_bits_proc(), height_plus_depth(), hessenberg(), hlist_out(), hpack(), Color::HSB2RGB(), hsv_rgb(), huft_build(), hyphenate(), SplashOutputDev::iccImageSrc(), SplashOutputDev::iccTransform(), SplashOutputDev::imageMaskSrc(), SplashOutputDev::imageSrc(), indent_in_hmode(), inflate_blocks(), inflate_codes(), inflate_flush(), init_math(), init_simplified_progress(), init_vt100_progress(), initcolor(), CollationFastLatinBuilder::inSameGroup(), ReorderingBuffer::insert(), ClipperLib::IntersectPoint(), inxbuild(), is_prime(), CollationRootElements::isEndOfPrimaryRange(), isprime(), jbg_dec_merge_planes(), just_reverse(), k_find_file(), KernelBessel_J1(), KernelBessel_Order1(), KernelBessel_P1(), KernelBessel_Q1(), kpathsea_fsyscp_popen(), kpathsea_fsyscp_system(), kpathsea_getlongpath(), kpathsea_name_ok(), kpathsea_tilde_expand(), CollationRootElements::lastCEWithPrimaryBefore(), libdef_rec(), line_break(), list_node_mem_usage(), lj_buf_putmem(), lj_buf_putstr_lower(), lj_buf_putstr_rep(), lj_buf_putstr_reverse(), lj_buf_putstr_upper(), lj_buf_wmem(), lj_cf_os_date(), lj_meta_init(), lj_str_find(), lj_str_haspattern(), lj_strfmt_putfxint(), lj_strfmt_wfnum(), load_fmt_file(), load_pnm_low(), lua_insert(), lua_str_toks(), luaV_div(), macro_call(), main(), make_accent(), make_delimiter_over(), make_delimiter_under(), make_frac(), make_fraction(), make_hextension(), make_left_right(), make_legal_yiq(), make_legal_yiq_i(), make_local_par_node(), make_math_accent(), make_op(), make_ord(), make_over(), make_over_delimiter(), make_radical(), make_scripts(), make_suffix(), make_under(), make_under_delimiter(), make_vcenter(), Collation::makeCE(), makecopy(), makefont(), SplashFTFont::makeGlyph(), CollationBuilder::makeTailoredCEs(), manufacture_csname(), map_segment(), SplashOutputDev::maskedImageSrc(), math_ac(), math_clone(), math_fraction(), math_left_brace(), math_left_right(), math_math_comp(), math_radical(), math_vcenter_group(), MathsLexicalAnalyser(), mfluaPOSTmakeellipse(), mfluaPREmakeellipse(), millerrabin(), mime_begin_strict(), mime_integrity(), Splash::mirrorImageMaskRow(), Splash::mirrorImageRow(), mk_shellcmdlist(), mlist_to_hlist(), move_right(), movement(), mpfr_add_q(), mpfr_addrsh(), mpfr_agm(), mpfr_beta(), mpfr_cmp_q(), mpfr_const_log2_internal(), mpfr_cos2_aux(), mpfr_digamma_positive(), mpfr_digamma_reflection(), mpfr_div(), mpfr_div_1(), mpfr_div_1n(), mpfr_div_2(), mpfr_erandom(), mpfr_exp2_aux(), mpfr_exp2_aux2(), mpfr_exp_2(), mpfr_get_q(), mpfr_log(), mpfr_log_ui(), mpfr_nrandom(), mpfr_set_q(), mpfr_sincos_fast(), mpfr_sub_q(), mpfr_subnormalize(), mpfr_yn_s3(), mpfr_zeta_ui(), mplib_solve_path(), mpn_dc_sqrt(), mpn_dc_sqrtrem(), mpn_div_qr_1_preinv(), mpn_div_qr_2_preinv(), mpn_div_qr_2n_pi2(), mpn_div_qr_pi1(), mpn_jacobi_update(), mpn_sqrtrem2(), mpq_abs(), mpq_cmp_si(), mpq_cmp_ui(), mpq_div_2exp(), mpq_get_den(), mpq_get_num(), mpq_get_str(), mpq_inv(), mpq_mul_2exp(), mpq_neg(), mpq_set(), mpz_cdiv_q(), mpz_cdiv_q_ui(), mpz_cdiv_qr(), mpz_cdiv_qr_ui(), mpz_div_q_2exp(), mpz_div_qr(), mpz_div_qr_ui(), mpz_divexact(), mpz_divexact_by3(), mpz_divexact_by5(), mpz_divexact_limb(), mpz_divexact_ui(), mpz_fdiv_q(), mpz_fdiv_q_ui(), mpz_fdiv_qr(), mpz_fdiv_qr_ui(), mpz_normalize(), mpz_probab_prime_p(), mpz_set_q(), mpz_tdiv_q(), mpz_tdiv_q_ui(), mpz_tdiv_qr(), mpz_tdiv_qr_ui(), my_getopt(), myatodim(), NEW(), new_glue(), new_graf(), new_hyph_exceptions(), new_index(), new_ligature(), new_margin_kern(), new_param_glue(), new_patterns(), new_skip_param(), new_spec(), new_sub_box(), NEWFLEX(), newoutname(), newstring(), FCDUTF16CollationIterator::nextSegment(), nexttoken(), normalize_quotes(), off_save(), open_dvi_output(), openfiles(), openout(), __gmp_expr< mpq_t, mpq_t >::operator=(), optMatch(), out_bmp_work(), out_xwd_work(), output_pages_list(), overbar(), P(), paramnewstring(), paramstring(), parse_char(), parse_dimensions(), parse_filename(), parse_integer_value(), parse_key_val(), parse_string_value(), parse_text(), parse_xref_table(), parseencodingfile(), ParseMathsExpression(), path(), pcomp(), pdf_get_object(), pdf_path__elliptarc(), pdf_place_form(), pdf_place_rule(), pdf_read_fontmap_line(), pdf_read_object(), pdfcolorstack__get_id(), pfr_extra_item_load_kerning_pairs(), pfr_phy_font_load(), pk_bm_cvt(), pk_rll_cvt(), posix_parse_dollar(), posix_parse_dq(), posix_parse_sq(), post_line_break(), postpost(), pow_zi(), predospecial(), prefixed_command(), prepareFromUMappings(), prepend_alloc(), PrettyApprox(), FCDUTF16CollationIterator::previousSegment(), print_break_node(), print_composefont(), print_sa_num(), print_section_name(), priv_mfweb_info(), priv_mfweb_left_type(), priv_mfweb_left_x(), priv_mfweb_left_y(), priv_mfweb_link(), priv_mfweb_right_type(), priv_mfweb_right_x(), priv_mfweb_right_y(), priv_mfweb_x_coord(), priv_mfweb_y_coord(), proc_dvilua_font_record(), processargs(), prune_page_top(), ps_parser_load_field(), pseudo_close(), pseudo_start(), pst_new_mark(), pst_parse_null(), ptspnm_load_image(), put_big_endian(), putfontdef(), re_string_reconstruct(), read_bitfield_bits(), read_encoding(), read_objstm(), read_options(), read_sfd_record(), read_toks(), readencoding(), readline(), really_init_sfd(), rebox(), Normalizer2Impl::recompose(), reconstitute(), redirect(), reencode_string_from_utf8_to_utf16be(), GHash::remove(), remove_dbonly(), GHash::removeInt(), CollationSettings::reorderEx(), replace(), resetcolorstack(), residentfont(), reverse(), revlist(), rleit(), runt1asm(), runtoks(), S(), s_CFE_process(), sa_save(), scan1fontcomment(), scan_dimen(), scan_expr(), scan_fontnames(), scan_general_text(), scan_glue(), scan_int(), scan_keyword(), scan_keyword_case_sensitive(), scan_line(), scan_math(), scan_pdfdest(), scan_pdfoutline(), scan_rule_spec(), scan_section(), scan_sfd_file(), scan_something_internal(), scan_special(), scan_toks(), scanifont(), scanvm(), section_lookup(), section_name_cmp(), select_pages(), selectglyph(), selfautoloc_prog(), send_headers(), set_cs_start(), set_macro(), set_maketex_mag(), set_math_char(), set_tex_box_depth(), set_tex_box_height(), set_tex_box_width(), setup_math_style(), sfd_load_record(), shift_sub_exp_box(), ship(), short_scan_something_internal(), show_activities(), show_context(), show_hyphen(), show_token_list(), simple_advance_width(), slow_get_node(), SplashOutputDev::softMaskMatteImageSrc(), sort_avail(), spc_color_check_special(), spc_color_setup_handler(), spc_dvipdfmx_setup_handler(), spc_handler_pdfcolorstackinit(), spc_handler_pdfm_mapline(), spc_handler_tpic_ar(), spc_handler_tpic_da(), spc_handler_tpic_dt(), spc_handler_tpic_ia(), spc_handler_tpic_pa(), spc_handler_tpic_pn(), spc_handler_tpic_sh(), spc_handler_tpic_sp(), spc_handler_xtx_fontmapline(), spc_pdfm_setup_handler(), spc_read_color_color(), spc_read_color_pdf(), spc_tpic_check_special(), spc_tpic_setup_handler(), spc_util_read_blahblah(), spc_util_read_length(), spc_util_read_numbers(), spc_xtx_setup_handler(), split_mf_name(), sprint_section_name(), stack_glue_into_box(), stack_into_box(), StartPosQueuePush(), store_fmt_file(), str_find_aux(), str_reverse(), str_scan_toks(), str_split(), str_toks(), str_toks_cat(), string_to_pseudo(), string_to_toks(), stripzeros(), suffix(), svg_lineto(), svg_rmoveto(), __gmp_expr< mpq_t, mpq_t >::swap(), t1_ArgErr(), t1_modify_fm(), t1_scan_keys(), t1_TypeErr(), tail_of_list(), take_frac(), tell_needed_fonts(), test_for_cs(), the_toks(), SplashOutputDev::tilingBitmapSrc(), to4bpp(), tokenlist_from_lua(), tokenlist_to_cstring(), tokenlist_to_xstring(), transf(), DCTStream::transformDataUnit(), transformEUC(), trie_fix(), trie_node(), trie_pack(), try_break(), tt_build_tables(), tt_face_get_kerning(), ttf_copy_encoding(), u_strFindFirst_68(), u_strFindLast_68(), u_strToPunycode_68(), uchar_swapNames_68(), ucnv_swapAliases_68(), uInt64_toAscii(), undump_primitives(), unicodeNormalizeNFKC(), unit(), unpack_run(), unset_attribute(), upmap(), uprv_getDefaultLocaleID_68(), uprv_swapArray16(), uprv_swapArray32(), uprv_swapArray64(), ures_swapResource(), usage(), usrc_createWithHeader(), var_delimiter(), vert_break(), ASCII85Encode::vi_write(), vlist_out(), vms_parse_quotes(), vsplit(), wcomp(), win32_popen(), win32_system(), ASCII85Encode::wout(), wrapup_over_under_delimiter(), write_out(), write_paths_opaque(), write_paths_transparent_rec(), write_polygons(), writepl(), CollationKeys::writeSortKeyUpToQuaternary(), writevpl(), PSOutputDev::writeXpdfProcset(), xfig_point(), xfig_write_paths(), xor_read(), yiqtorgb(), zmakefraction(), zmakescaled(), ztakefraction(), and ztakescaled().

◆ rbound

struct adobeinfo* rbound

Definition at line 229 of file afm2pl.c.

Referenced by changeadobe(), and set_rboundarychar().

◆ rboundarychar

int rboundarychar = -1

Definition at line 227 of file afm2pl.c.

Referenced by checkligkern(), extraligkerninfo(), set_rboundarychar(), and writepl().

◆ sawligkern

int sawligkern

Definition at line 1297 of file afm2pl.c.

Referenced by checkligkern(), and extraligkerninfo().

◆ slant

float slant = 0.0

Definition at line 221 of file afm2pl.c.

Referenced by changeadobe(), transform(), and writepl().

◆ slantparam

char * slantparam

Definition at line 223 of file afm2pl.c.

◆ smbuffer

char smbuffer[100]

reading encodings

Definition at line 954 of file afm2pl.c.

Referenced by gettoken().

◆ tfmnext

int tfmnext[256]

Definition at line 205 of file afm2pl.c.

Referenced by readencoding(), and writepl().

◆ tfmptrs

struct adobeinfo * tfmptrs[256]

Definition at line 203 of file afm2pl.c.

Referenced by findtfm(), plname(), readencoding(), set_rboundarychar(), and writepl().

◆ verbose

int verbose = 0

Definition at line 238 of file afm2pl.c.

Referenced by readencoding().

◆ xheight