int nfiles; /* how many in the list */
FILE *currfp; /* the currently open one */
int currindex; /* which one is that in the list */
+ int wantclose; /* does the current file want closing */
pushback *pushback; /* pushed-back input characters */
int npushback, pushbacksize;
filepos pos;
quote_Close = 0x0020,
quote_mask = 0x0030
};
+#define isvis(x) ( ( (x) >= word_Normal && (x) <= word_LowerXref ) )
#define isattr(x) ( ( (x) > word_Normal && (x) < word_WhiteSpace ) || \
( (x) > word_WhiteSpace && (x) < word_internal_endattrs ) )
#define sameattr(x,y) ( (((x)-(y)) & 3) == 0 )
err_afmkey, /* missing expected keyword in AFM */
err_afmvers, /* unsupported AFM version */
err_afmval, /* missing value(s) for AFM key */
+ err_pfeof, /* eof in Type 1 font file */
+ err_pfhead, /* bad Type 1 header line */
+ err_pfbad, /* otherwise invalide Type 1 font */
+ err_pfnoafm, /* Type 1 font but no AFM */
+ err_chmnames, /* need both or neither of hhp+chm */
+ err_sfntnotable, /* required sfnt table missing */
+ err_sfntnopsname, /* sfnt has no PostScript name */
+ err_sfntbadtable, /* sfnt table not valid */
+ err_sfntnounicmap, /* sfnt has no UCS-2 cmap */
+ err_sfnttablevers, /* sfnt table version unknown */
+ err_sfntbadhdr, /* sfnt has bad header */
+ err_sfntbadglyph, /* sfnt cmap references bad glyph */
err_whatever /* random error of another type */
};
void free_word_list(word *w);
void free_para_list(paragraph *p);
word *dup_word_list(word *w);
-char *dupstr(char *s);
+char *dupstr(char const *s);
#define snew(type) ( (type *) smalloc (sizeof (type)) )
#define snewn(number, type) ( (type *) smalloc ((number) * sizeof (type)) )
wchar_t *rdtrim(rdstring *rs);
void rdaddc(rdstringc *rs, char c);
void rdaddsc(rdstringc *rs, char const *p);
+void rdaddsn(rdstringc *rc, char const *p, int len);
char *rdtrimc(rdstringc *rs);
int compare_wordlists(word *a, word *b);
* in_pf.c
*/
void read_pfa_file(input *in);
+void read_pfb_file(input *in);
+
+/*
+ * in_sfnt.c
+ */
+void read_sfnt_file(input *in);
/*
* keywords.c
* bk_paper.c
*/
void *paper_pre_backend(paragraph *, keywordlist *, indexdata *);
+void listfonts(void);
/*
* bk_ps.c