c806c9a63e95cb01376e8a4efec80057f1a80161
[chise/kage.git] / kage.h
1 //kage.h
2 //
3
4 #include "sysdep.h"
5
6 #ifndef _KAGE_H_
7 #define _KAGE_H_
8
9 int kShotai;
10 #define kMincho 0
11 #define kGothic 1
12
13 #define kWhite 0xFF
14 #define kBlack 0
15 #define kGray 1
16
17 #define kMage 10
18 #define kRate 20
19 #define kResolution (1000 / kRate + 1) * 2
20 #define kMinWidthY 2
21 #define kMinWidthT 6
22 #define kWidth 5
23 #define kKakato 3 //has KAKATO = 2, no KAKATO = 1
24 #define kKasane 3
25 #define kMixdot (kWidth * 2) * (kWidth * 2 - 1)
26 #define kL2RDfatten 1.1
27 #define kUroko 24
28
29 #define kMaxIDSSequenceLength 16
30 #define kMaxIDCLength 16
31 #define kMaxStrokeDataLength 256 // over 12(digits per integer with +/- flag) * 11(columns) + 1(line end)
32
33 #define FLAG_FLAT_LEFT 1
34 #define FLAG_FLAT_RIGHT 2
35 #define FLAG_FLAT_TOP 4
36 #define FLAG_FLAT_BOTTOM 8
37 #define FLAG_REPLACE_2FF1_TO_2FF5 16
38 #define FLAG_RADICAL_LEFT 32
39
40 #define FLAG_SURROUND_LEFT 1
41 #define FLAG_SURROUND_RIGHT 2
42 #define FLAG_SURROUND_TOP 4
43 #define FLAG_SURROUND_BOTTOM 8
44
45 #define DRAW_GLYPH_MODE_NORMAL 0
46 #define DRAW_GLYPH_MODE_WITHOUT_DECORATION 1
47
48 typedef struct _kPoint{
49         double X;
50         double Y;
51 } kPoint;
52
53 kPoint poly[kResolution];
54 kPoint poly2[3];
55 kPoint poly3[5];
56 kPoint poly4[4];
57
58 //kagedf.c
59 void dfDrawFont(int, int, int, int, int, int, int, int, int, int, int);
60 //kagecd.c
61 void cdDrawBezier(double, double, double, double, double, double, double, double, int, int);
62 void cdDrawCurve(double, double, double, double, double, double, int, int);
63 void cdDrawLine(double, double, double, double, int, int);
64 //kageic.c
65 void icPolygon(kPoint *, int);
66 void icBox(int, int, int, int);
67 void icDot(int, int);
68
69 #endif