diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2009-11-10 10:22:31 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2009-11-10 10:22:31 +0000 |
commit | 25078167f4333fa5acc0aa69a98490913be13433 (patch) | |
tree | 9e3035926ca53ebde75ffba4dd486411c13e81bb /Build/source/utils/t1utils/t1utils-1.34/t1lib.h | |
parent | 2caa63d64f99a64f64c8c4a5260477f761052eb4 (diff) |
towards TL2010: utils/t1utils
git-svn-id: svn://tug.org/texlive/trunk@15958 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/t1utils/t1utils-1.34/t1lib.h')
-rw-r--r-- | Build/source/utils/t1utils/t1utils-1.34/t1lib.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/Build/source/utils/t1utils/t1utils-1.34/t1lib.h b/Build/source/utils/t1utils/t1utils-1.34/t1lib.h new file mode 100644 index 00000000000..93859fea731 --- /dev/null +++ b/Build/source/utils/t1utils/t1utils-1.34/t1lib.h @@ -0,0 +1,56 @@ +#ifndef T1LIB_H +#define T1LIB_H +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef WIN32 +# pragma warning (disable: 4007 4096) +# define CDECL __cdecl +#else +# define CDECL +#endif + +#define PFB_MARKER 128 +#define PFB_ASCII 1 +#define PFB_BINARY 2 +#define PFB_DONE 3 + +struct font_reader { + void (*output_ascii)(char *, int); + void (*output_binary)(unsigned char *, int); + void (*output_end)(); +}; + +void process_pfa(FILE *, const char *filename, struct font_reader *); +void process_pfb(FILE *, const char *filename, struct font_reader *); + +struct pfb_writer { + unsigned char *buf; + unsigned len; + unsigned max_len; + unsigned pos; + int blocktyp; + int binary_blocks_written; + FILE *f; +}; + +void init_pfb_writer(struct pfb_writer *, int, FILE *); +void pfb_writer_output_block(struct pfb_writer *); +void pfb_writer_grow_buf(struct pfb_writer *); +void pfb_writer_end(struct pfb_writer *); +#define PFB_OUTPUT_BYTE(w, b) do { \ + if ((w)->pos >= (w)->len) pfb_writer_grow_buf(w); \ + (w)->buf[(w)->pos++] = (b); \ + } while (0) + +int crcbuf(int crc, unsigned int len, const char *buf); + +/* whoever uses this code must provide a definition for these functions */ +extern void error(const char *, ...); +extern void fatal_error(const char *, ...); + +#ifdef __cplusplus +} +#endif +#endif |