Add an error check for correct formatting in Deflate uncompressed
[sgt/halibut] / paper.h
diff --git a/paper.h b/paper.h
index 29d6407..652fa7e 100644 (file)
--- a/paper.h
+++ b/paper.h
@@ -90,6 +90,7 @@ struct font_info_Tag {
      * Pointer to data about the file containing the font, if any.
      */
     void *fontfile;
+    enum { TYPE1, TRUETYPE } filetype;
     /* A tree of glyph_widths */
     tree234 *widths;
     /* A tree of kern_pairs */
@@ -386,20 +387,42 @@ 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);
 
 /*
- * Function from bk_pdf.c borrowed by bk_ps.c
+ * Functions exported from bk_pdf.c
  */
+typedef struct object_Tag object;
+typedef struct objlist_Tag objlist;
+object *new_object(objlist *list);
+void objtext(object *o, char const *text);
+void objstream(object *o, char const *text);
+void objstream_len(object *o, char const *text, size_t len);
 char *pdf_outline_convert(wchar_t *s, int *len);
 
 /*
+ * Function exported from bk_ps.c
+ */
+void ps_token(FILE *fp, int *cc, char const *fmt, ...);
+
+/*
  * Backend functions exported by in_pf.c
  */
 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
+ */
+typedef struct sfnt_Tag sfnt;
+glyph sfnt_indextoglyph(sfnt *sf, unsigned idx);
+unsigned sfnt_glyphtoindex(sfnt *sf, glyph g);
+unsigned sfnt_nglyphs(sfnt *sf);
+void sfnt_writeps(font_info const *fi, FILE *ofp);
+void sfnt_data(font_info *fi, char **bufp, size_t *lenp);
+
 #endif