Fix exporting SVG format. Changed some file's path (as temp.)
authorKoichi KAMICHI <kamichi@fonts.jp>
Thu, 28 Oct 2004 06:26:31 +0000 (06:26 +0000)
committerKoichi KAMICHI <kamichi@fonts.jp>
Thu, 28 Oct 2004 06:26:31 +0000 (06:26 +0000)
kagecgi/Makefile
kagecgi/kagecgi.c
kagecgi/kagecgi.h
kagecgi/kageic.c

index 5181c8a..1c886a4 100755 (executable)
@@ -9,7 +9,7 @@ SHAREDIR=/usr/local/share/kagecgi
 DBURL=http://fonts.jp/kagedb/kagedb
 
 CFLAGS=
-LIBS= -lpng -ldb
+LIBS= -lpng -ldb -lm
 
 #for MacOSX with fink
 #CFLAGS= -I/sw/include -I/sw/include/db3 -I/sw/include/libpng/
index 24fb599..bfd494a 100755 (executable)
@@ -99,7 +99,8 @@ int main(int argc, char *argv[]){
   if(kType == 1){ //svg
     kg_string_append(kResultText, "<?xml version=\"1.0\"?>\n");
     kg_string_append(kResultText, "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.0//EN\" \"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd\">\n");
-    kg_string_append(kResultText, "<svg viewBox=\"0 0 1024 1024\">");
+    kg_string_append(kResultText, "<svg width=\"1024\" height=\"1024\" viewBox=\"0 0 1024 1024\">");
+    kg_string_append(kResultText, "<g style=\"fill: black; stroke: black\">");
   }
   else if(kType == 2){ //eps
     kg_string_append(kResultText, "%!PS-Adobe-3.0 EPSF-3.0\n");
@@ -162,7 +163,7 @@ int main(int argc, char *argv[]){
       test2 = CalcSizes(test2, 1);
       kMode = 1;
       drawGlyph(test2, 0);
-      kg_string_append(kResultText, "</svg>\n");
+      kg_string_append(kResultText, "</g></svg>\n");
       if(type != 1) fprintf(stdout, "Content-type: image/svg-xml\n\n");
       fprintf(stdout, "%s", kResultText->str);
     }
index cd38a5a..4ce9d49 100755 (executable)
@@ -9,9 +9,11 @@
 \r
 // define for localhost environment\r
 #define errorFileSize 3992\r
-#define errorFileName "/usr/local/share/kagecgi/error.png"\r
+//#define errorFileName "/usr/local/share/kagecgi/error.png"\r
+#define errorFileName "error.png"\r
 #define pngFilePath "/var/www/fontsjp/v0.4/"\r
-#define databaseFileName "/usr/local/share/kagecgi/kagedb"\r
+//#define databaseFileName "/usr/local/share/kagecgi/kagedb"\r
+#define databaseFileName "kagedb"\r
 \r
 #define kBaseline 188\r
 #define pngWidth 200\r
index ad67f0a..3edbe2f 100755 (executable)
@@ -5,32 +5,35 @@
 #include "kagecgi.h"\r
 \r
 void icPolygon(kPoint *poly, int number){\r
-       int i;\r
-       char buf[256];\r
-       \r
-       if(kMode == 0){ //normal\r
-               fillPolygon(poly, number, 0, kageCanvas);\r
-       }\r
-       else if(kMode == 1){ //output for svg\r
-               sprintf(buf, "<path d=\"M ");\r
-               kg_string_append(kResultText, buf);\r
-               for(i = 0; i < number; i++){\r
-                       sprintf(buf, "%.0f,%.0f ", poly[i].X * 5, poly[i].Y * 5);\r
-                       kg_string_append(kResultText, buf);\r
-               }\r
-               sprintf(buf, "Z\"/>");\r
-               kg_string_append(kResultText, buf);\r
-       }\r
-       else if(kMode == 2){ //output for eps\r
-               sprintf(buf, "%.0f %.0f moveto\n", poly[0].X * 5, 1000 - (poly[0].Y * 5) - 200);\r
-               kg_string_append(kResultText, buf);\r
-               for(i = 1; i < number; i++){\r
-                       sprintf(buf, " %.0f %.0f lineto\n", poly[i].X * 5, 1000 - (poly[i].Y * 5) - 200);\r
-                       kg_string_append(kResultText, buf);\r
-               }\r
-               sprintf(buf, " %.0f %.0f lineto\n", poly[0].X * 5, 1000 - (poly[0].Y * 5) - 200);\r
-               kg_string_append(kResultText, buf);\r
-               kg_string_append(kResultText, "closepath\n");\r
-       }\r
-\r
+  int i;\r
+  char buf[256];\r
+  \r
+  if(kMode == 0){ //normal\r
+    fillPolygon(poly, number, 0, kageCanvas);\r
+  }\r
+  else if(kMode == 1){ //output for svg\r
+    sprintf(buf, "<path d=\"M ");\r
+    kg_string_append(kResultText, buf);\r
+    for(i = 0; i < number; i++){\r
+      if(i == 1){\r
+       sprintf(buf, "L ");\r
+       kg_string_append(kResultText, buf);\r
+      }\r
+      sprintf(buf, "%.0f,%.0f ", poly[i].X * 5, poly[i].Y * 5);\r
+      kg_string_append(kResultText, buf);\r
+    }\r
+    sprintf(buf, "Z\"/>");\r
+    kg_string_append(kResultText, buf);\r
+  }\r
+  else if(kMode == 2){ //output for eps\r
+    sprintf(buf, "%.0f %.0f moveto\n", poly[0].X * 5, 1000 - (poly[0].Y * 5) - 200);\r
+    kg_string_append(kResultText, buf);\r
+    for(i = 1; i < number; i++){\r
+      sprintf(buf, " %.0f %.0f lineto\n", poly[i].X * 5, 1000 - (poly[i].Y * 5) - 200);\r
+      kg_string_append(kResultText, buf);\r
+    }\r
+    sprintf(buf, " %.0f %.0f lineto\n", poly[0].X * 5, 1000 - (poly[0].Y * 5) - 200);\r
+    kg_string_append(kResultText, buf);\r
+    kg_string_append(kResultText, "closepath\n");\r
+  }\r
 }\r