Minimal support for <LINK REL="next"> etc machine-readable navigation links.
[sgt/halibut] / paper.h
diff --git a/paper.h b/paper.h
index bab9e4f..29d6407 100644 (file)
--- 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