Fix exporting SVG format. Changed some file's path (as temp.)
[chise/kage.git] / kagecgi / kagecgi.h
1 //kagecgi.h\r
2 //\r
3 \r
4 #include "kage.h"\r
5 #include "sysdep.h"\r
6 \r
7 #ifndef _KAGECGI_H_\r
8 #define _KAGECGI_H_\r
9 \r
10 // define for localhost environment\r
11 #define errorFileSize 3992\r
12 //#define errorFileName "/usr/local/share/kagecgi/error.png"\r
13 #define errorFileName "error.png"\r
14 #define pngFilePath "/var/www/fontsjp/v0.4/"\r
15 //#define databaseFileName "/usr/local/share/kagecgi/kagedb"\r
16 #define databaseFileName "kagedb"\r
17 \r
18 #define kBaseline 188\r
19 #define pngWidth 200\r
20 #define pngHeight 200\r
21 #define canvasWidth 400\r
22 #define canvasHeight 400\r
23 \r
24 #define min(x1,x2) ((x1) > (x2))? (x2):(x1)\r
25 #define max(x1,x2) ((x1) > (x2))? (x1):(x2)\r
26 \r
27 DB *kDatabase;\r
28 \r
29 FILE *debug;\r
30 \r
31 png_bytepp kageCanvas;\r
32 \r
33 int kDesign;\r
34 int kSize;\r
35 int kType;\r
36 int kInput;\r
37 KGString *kResultText;\r
38 int kMode;\r
39 \r
40 void generateGlyph(const KGString *in, KGString *out);\r
41 void searchPartsData(const KGString *in, KGString *out);\r
42 void searchAliasData(const KGString *in, KGString *out);\r
43 void searchCacheData(const KGString *in, KGString *out);\r
44 void doCombine(const KGString *in, KGString *out);\r
45 void drawGlyph(const KGString *in, const int mode);\r
46 \r
47 int isIDS(const KGString *in);\r
48 void divideInto2(const KGString *in, KGString *partIDS1, KGString *partIDS3);\r
49 void divideInto3(const KGString *in, KGString *partIDS1, KGString *partIDS2, KGString *partIDS3);\r
50 void addStrokeWithTransform(const KGString *stroke, const int num, const int *tf, KGString *out, int mode);\r
51 void convertArray(int *buf, KGString *out, int size, int mode);\r
52 int * convertStroke(const char *in, int *a, int *size);\r
53 void convert99(const KGString *in, KGString *out);\r
54 void convert99calc(const char *in, KGString *out);\r
55 \r
56 void DotsWidth(int *dlx, int *drx);\r
57 void DotsHeight(int *dly, int *dry);\r
58 void PartsWidth(const KGString *in, int *lx, int *rx);\r
59 void PartsHeight(const KGString *in, int *ly, int *ry);\r
60 KGString * CalcSizes(const KGString *in, int mode);\r
61 void DrawBox();\r
62 void CalcOptions(const KGString *in, int *mitsudo, int *flag, double *yoko, double *tate);\r
63 void DoDrawParts(const KGString *in, const int lx1, const double rf1, const int ly1, const double rfy1);\r
64 void DoDrawMixFont(const KGString *in1, const int lx1, const double rf1, const KGString *in2, const int lx2, const double rf2, const int ly1, const double rfy1, const int ly2, const double rfy2);\r
65 \r
66 void combineYoko2(const KGString *parts1, const KGString *parts3, int *result);\r
67 void combineYoko3(const KGString *parts1, const KGString *parts2, const KGString *parts3, int *result);\r
68 void combineTate2(const KGString *parts1, const KGString *parts3, int *result);\r
69 void combineTate3(const KGString *parts1, const KGString *parts2, const KGString *parts3, int *result);\r
70 void combineHame2(const KGString *parts1, const KGString *parts3, int *result);\r
71 \r
72 int initDB();\r
73 int closeDB();\r
74 void searchPartsData(const KGString *in, KGString *out);\r
75 void searchAliasData(const KGString *in, KGString *out);\r
76 \r
77 png_bytepp initPng(int width, int height);\r
78 int closePng(int width, int height, png_bytepp canvas);\r
79 int writePng(int width, int height, png_bytepp image, FILE *fp);\r
80 \r
81 void fillPolygon(kPoint *p, int number, int col, unsigned char **image);\r
82 \r
83 #endif\r