1 /*************************************************************************** 2 * Copyright (C) 1991,1992 by Wei Sun (william@cs.anu.edu.au) 3 * All Rights Reserved 4 * Version 2.02 5 * 6 * File:gb2ps.h 7 * 8 * DISTRIBUTION: 9 * This program is NOT in public domain. 10 * It can be freely distributed for non-commercial purposes only, 11 * and THERE IS NO WARRANTY FOR THIS PROGRAM. 12 ****************************************************************************/ 13 #include <stdio.h> 14 #include <stdlib.h> 15 #include <string.h> 16 #include <ctype.h> 17 18 #define CHAR_LIMIT 2 19 #ifndef CFONT 20 #define CFONT "./" 21 #endif 22 23 #define SONGTI "csong24.ccf" 24 #define KEITI "ckai24.ccf" 25 #define FANGSONGTI "cfang24.ccf" 26 #define HEITI "chei24.ccf" 27 #define FANTI "cfan24.ccf" 28 #define USERDEF "user24.ccf" 29 30 31 extern int font_height,font_width; 32 extern float linespace,charspace; 33 34 35 #define _CSP (font_width+charspace) 36 #define _ASP ((float)font_width/2+charspace) 37 #define _CLP (maxFont_height+linespace) 38 39 #ifndef TRUE 40 # define TRUE 1 41 #endif 42 #ifndef FALSE 43 # define FALSE 0 44 #endif 45 46 /*page margins*/ 47 extern int _LM,_RM,_TM,_BM,_FI; 48 struct Page { 49 long offset; 50 int _LM,_RM,_TM,_BM,_FI; 51 int font_height,font_width; 52 int chfont; 53 int lineNo; 54 }; 55 56 extern struct Page page[]; 57 58 struct CHfont { 59 char name[20]; 60 FILE *fp; 61 int height,width; 62 }; 63 64 extern struct CHfont CHFONT[]; 65 66 extern int CFP; 67 extern char cfont_name[]; 68 extern char filename[]; 69 70 extern char styear[]; 71 extern char stmonth[]; 72 extern char stissue[]; 73 extern char stheader[],stfooter[]; 74 75 extern long offset_CH; 76 extern long size_of_CH; 77 extern char line[500]; 78 79 extern int charcount; 80 extern int Analyse_flag; 81 82 extern int page_begin_print,page_end_print; 83 extern int endpage_flag; 84 extern int format_flag; 85 extern int pageno_flag; 86 extern int coverpage_flag; 87 extern void coverpage(); 88 extern int pagecounter; 89 extern int linecounter; 90 extern float line_h[]; 91 extern int setgray; 92 93 extern FILE *in, *out; 94 extern FILE *cfont; 95 extern float H,V; 96 97 extern void ASCshow(); 98 extern void put_ASC(); 99 extern void put_CH(); 100 extern int putChar(); 101 extern void putString(); 102 extern void DefCHdict(); 103 extern void AnalyseDoc(); 104 105 extern void ps_end(); 106 extern void end_page(); 107 extern void begin_page(); 108 extern void ps_header(); 109 extern void init_page(); 110 extern int init(); 111 extern void cleanup(); 112 extern int readchar(); 113