X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/halibut/blobdiff_plain/5aa98a4b030febc0aa0c75d987bb3dc9e96ae47a..b554f0ec8dd50eaeedf5ba555762831c03b0f856:/paper.h diff --git a/paper.h b/paper.h index a15cbc7..0f45b89 100644 --- a/paper.h +++ b/paper.h @@ -87,14 +87,10 @@ struct font_info_Tag { */ const char *name; /* - * The file containing this font, if any. + * Pointer to data about the file containing the font, if any. */ - FILE *fp; - filepos pos; - /* - * Lengths of the unencrypted and encrypted portions of the font. - */ - long length1, length2; + void *fontfile; + enum { TYPE1, TRUETYPE } filetype; /* A tree of glyph_widths */ tree234 *widths; /* A tree of kern_pairs */ @@ -391,6 +387,7 @@ glyph glyph_intern(char const *); char const *glyph_extern(glyph); wchar_t ps_glyph_to_unicode(glyph); extern const char *const ps_std_glyphs[]; +extern glyph const tt_std_glyphs[]; void init_std_fonts(void); const int *ps_std_font_widths(char const *fontname); const kern_pair *ps_std_font_kerns(char const *fontname); @@ -405,5 +402,11 @@ char *pdf_outline_convert(wchar_t *s, int *len); */ void pf_part1(font_info *fi, char **bufp, size_t *lenp); void pf_part2(font_info *fi, char **bufp, size_t *lenp); +void pf_writeps(font_info const *fi, FILE *ofp); + +/* + * Backend functions exported by in_sfnt.c + */ +void sfnt_writeps(font_info const *fi, FILE *ofp); #endif