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