X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/halibut/blobdiff_plain/d5bc1c48d6a59db9480a3c8ce43fd8ca8a3b6a21..3e2dd889175865f670a2309f757eee3d6a7f4723:/paper.h diff --git a/paper.h b/paper.h index bab9e4f..29d6407 100644 --- a/paper.h +++ b/paper.h @@ -87,14 +87,9 @@ 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; /* A tree of glyph_widths */ tree234 *widths; /* A tree of kern_pairs */ @@ -225,6 +220,11 @@ struct para_data_Tag { JUST, LEFT, RIGHT } justification; /* + * Sometimes (in code paragraphs) we want to override the flags + * passed to render_string(). + */ + unsigned extraflags; + /* * For constructing the page outline. */ int outline_level; /* 0=title 1=C 2=H 3=S 4=S2... */ @@ -384,7 +384,7 @@ int find_width(font_data *, glyph); */ glyph glyph_intern(char const *); char const *glyph_extern(glyph); -wchar_t ps_glyph_to_unicode(char const *glyph); +wchar_t ps_glyph_to_unicode(glyph); extern const char *const ps_std_glyphs[]; void init_std_fonts(void); const int *ps_std_font_widths(char const *fontname); @@ -400,5 +400,6 @@ 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); #endif