freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] GSoC-2017-kushal a2f066f 56/70: Script change and Render Mod


From: Kushal K S V S
Subject: [freetype2] GSoC-2017-kushal a2f066f 56/70: Script change and Render Mode calling
Date: Sun, 18 Mar 2018 11:21:18 -0400 (EDT)

branch: GSoC-2017-kushal
commit a2f066f7a5596d063150887f504dd98f39446b2d
Author: Kushal K S V S <address@hidden>
Commit: Kushal K S V S <address@hidden>

    Script change and Render Mode calling
---
 tests/make_png/Makefile      |  4 +--
 tests/make_png/bitmap.c      | 30 +++++++++++++++++++-
 tests/make_png/bitmap.h      |  5 ++--
 tests/make_png/make_sprite.c | 40 ++++++++++++++++-----------
 tests/make_png/runme.sh      | 66 ++++++++++++++++++++------------------------
 5 files changed, 87 insertions(+), 58 deletions(-)

diff --git a/tests/make_png/Makefile b/tests/make_png/Makefile
index d7aa2ca..dcb90ba 100644
--- a/tests/make_png/Makefile
+++ b/tests/make_png/Makefile
@@ -5,8 +5,6 @@ include $(TOP_DIR)/builds/unix/unix-def.mk
 
 SRC_SPRITE = make_sprite.c bitmap.c murmur3.c
 
-OBJS = $(src:.c=.o)
-
 CFLAGS = -Wall -g
 CC = gcc
 INCLUDE = -I $(includedir)/freetype2
@@ -15,7 +13,7 @@ LIBS = -lpng -lharfbuzz -lbz2 -ldl
 all: tests
 
 tests: $(SRC_SPRITE)
-       $(CC) $(CFLAGS) $(INCLUDE) -o $@  $(SRC_SPRITE) $(SRC_LIB) $(OBJS) 
$(LIBS)
+       $(CC) $(CFLAGS) $(INCLUDE) -o $@  $^ $(LIBS)
 
 .PHONY: clean force
 clean:
diff --git a/tests/make_png/bitmap.c b/tests/make_png/bitmap.c
index 6411915..6773b7d 100644
--- a/tests/make_png/bitmap.c
+++ b/tests/make_png/bitmap.c
@@ -42,6 +42,34 @@ HASH_32 * Generate_Hash_x86_32( FT_Bitmap * bitmap,
   return murmur;
 }
 
+/* This function takes the render mode argument and */
+/* returns the corresponding render_mode */
+int Get_Render_Mode(const char* mode){
+  /* Using -1 as the error code */
+  int render_mode = -1;
+
+  if ( strcmp(mode,"MONO") == 0 )
+  {
+    render_mode = 0;
+  }else if ( strcmp(mode,"AA") == 0 )
+  {
+    render_mode = 1;
+  }else if ( strcmp(mode,"RGB") == 0 )
+  {
+    render_mode = 2;
+  }else if ( strcmp(mode,"BGR") == 0 )
+  {
+    render_mode = 3;
+  }else if ( strcmp(mode,"VRGB") == 0 )
+  {
+    render_mode = 4;
+  }else if ( strcmp(mode,"VBGR") == 0 )
+  {
+    render_mode = 5;
+  }
+  return render_mode;
+}
+
 /* This function takes in the IMAGE data and returns the pointer */
 /* to the pixel at co-ordinates (x,y). This is used to access the */
 /* pixel data */
@@ -623,7 +651,7 @@ void Stitch(IMAGE* left, IMAGE* right, IMAGE* result){
 }
 
 /* This prints table-headers to a HTML file for the list-view page */
-void Print_Head( FILE* fp, char* fam, char* style, int size, int dpi){
+void Print_Head( FILE* fp ){
   printf("   *** Generating Images ***   \n");
   fprintf(fp,
   "<html>\n\
diff --git a/tests/make_png/bitmap.h b/tests/make_png/bitmap.h
index 1c206ef..ed3e0f1 100644
--- a/tests/make_png/bitmap.h
+++ b/tests/make_png/bitmap.h
@@ -59,7 +59,8 @@ HASH_128* Generate_Hash_x64_128(FT_Bitmap* bitmap, HASH_128* 
murmur);
 int Compare_Hash(HASH_128* hash_b, HASH_128* hash_t);
 
 /*-----------------------------------------------------------------*/
-
+/* Returns the render_mode */
+int Get_Render_Mode(const char* mode);
 /* Returns a pointer to pixel */
 /* at (x,y) co-ordinate */
 PIXEL* Pixel_At (IMAGE * bitmap, int x, int y);  
@@ -86,4 +87,4 @@ int Image_Diff( IMAGE* base, IMAGE* test);
 /* Print the row in list-view webpage */
 void Print_Row( FILE* fp, int index, char* name, int diff );
 /* Print the table-headers in list-view webpage */
-void Print_Head( FILE* fp, char* fam, char* style, int size, int dpi);
+void Print_Head( FILE* fp );
diff --git a/tests/make_png/make_sprite.c b/tests/make_png/make_sprite.c
index f51f88c..b85c2b8 100644
--- a/tests/make_png/make_sprite.c
+++ b/tests/make_png/make_sprite.c
@@ -13,8 +13,8 @@ int main(int argc, char const *argv[])
   const char*      base_version; 
   const char*      test_version; 
   const char*      font_file;
-  int              size;
-  int              render_mode;
+  const char*      mode;
+  int              pt_size;
   int              dpi;
 
   int              load_flag;  /* FT_LOAD_XXX */
@@ -25,8 +25,8 @@ int main(int argc, char const *argv[])
   test_version     = argv[2];
   
   font_file        = argv[3];
-  size             = atoi(argv[4]);
-  render_mode      = atoi(argv[5]);
+  pt_size          = atoi(argv[4]);
+  mode             = argv[5];
   dpi              = atoi(argv[6]);
 
   FT_Library       base_library;
@@ -43,7 +43,9 @@ int main(int argc, char const *argv[])
 
   FT_Error         error;
 
-  int alignment = 4;
+  int              render_mode;
+  int              alignment = 4;
+
   int output_file_size = 100 + strlen(argv[3]);
   char * output_file_name = (char *)calloc( output_file_size,
                                             sizeof(char));
@@ -213,7 +215,13 @@ int main(int argc, char const *argv[])
                                               "FT_Done_FreeType");
 
 /*******************************************************************/
-  
+  render_mode = Get_Render_Mode(mode);
+  if (render_mode < 0)
+  {
+    printf("Enter valid Render Mode.\n");
+    exit(1);
+  }
+
   switch ( render_mode ) {
   case 0: render_flag   = FT_RENDER_MODE_MONO;
           load_flag     = FT_LOAD_MONOCHROME;
@@ -295,7 +303,7 @@ int main(int argc, char const *argv[])
   }
 
   error = Base_Set_Char_Size( base_face,
-                              size * 64, 
+                              pt_size * 64,
                               0, 
                               dpi,
                               0 );
@@ -304,7 +312,7 @@ int main(int argc, char const *argv[])
     exit(1);
   }
   error = Test_Set_Char_Size( test_face,
-                              size * 64, 
+                              pt_size * 64,
                               0, 
                               dpi,
                               0 );
@@ -319,11 +327,11 @@ int main(int argc, char const *argv[])
   /* Initialising file pointer for the list-view*/
   if (snprintf( output_file_name,
             output_file_size,
-            "./html/pages/%d/%s/%d/%d/index.html",
+            "./html/pages/%d/%s/%s/%d/index.html",
             dpi,
             font_file,
-            render_mode,
-            size )
+            mode,
+            pt_size )
             > output_file_size )
   {
     printf("Buffer overflow. Increase output_file_size\n");
@@ -338,7 +346,7 @@ int main(int argc, char const *argv[])
     exit(1);
   }
 
-  Print_Head(fp,base_face->family_name,base_face->style_name,size,dpi);
+  Print_Head( fp );
 
 /* Need to write code to check the values in FT_Face and compare */
   for ( i = 0; i < base_face->num_glyphs; ++i)
@@ -461,11 +469,11 @@ int main(int argc, char const *argv[])
 
       if (snprintf( output_file_name,
                     output_file_size,
-                    "./html/pages/%d/%s/%d/%d/images/%s.png",
+                    "./html/pages/%d/%s/%s/%d/images/%s.png",
                     dpi,
                     font_file,
-                    render_mode,
-                    size,
+                    mode,
+                    pt_size,
                     glyph_name )
                     > output_file_size)
       {
@@ -478,7 +486,7 @@ int main(int argc, char const *argv[])
       Print_Row(fp,i,glyph_name,pixel_diff );
     }
   }
-  printf("Total      :  %ld\nFaulty     :  %d\n",base_face->num_glyphs,
+  printf("Total      :  %ld\nFaulty     :  %d\n\n",base_face->num_glyphs,
                   total_count );
  /* HTML footer */
   fprintf(fp,
diff --git a/tests/make_png/runme.sh b/tests/make_png/runme.sh
index c19e98c..0133dd4 100755
--- a/tests/make_png/runme.sh
+++ b/tests/make_png/runme.sh
@@ -1,23 +1,21 @@
+#! /bin/bash
+
 rm -rf ./html/pages
 rm -f ./html/top.html
 #####################################################################
-FT_TEST_DPI=${FT_TEST_DPI:-72 96};
-FT_TEST_FONT_FILE=${FT_TEST_FONT_FILE:-test.ttf};
-FT_TEST_RENDER_MODE=${FT_TEST_RENDER_MODE:-AA RGB};
-FT_TEST_PT_SIZE=${FT_TEST_PT_SIZE:-16 20};
+FT_TEST_DPI=${FT_TEST_DPI:-72 96}
+FT_TEST_FONT_FILE=${FT_TEST_FONT_FILE:-test.ttf}
+FT_TEST_RENDER_MODE=${FT_TEST_RENDER_MODE:-AA RGB}
+FT_TEST_PT_SIZE=${FT_TEST_PT_SIZE:-16 20}
 
-FT_TEST_BASE_DIR=${FT_TEST_BASE_DIR:-$HOME/base};
-FT_TEST_TEST_DIR=${FT_TEST_TEST_DIR:-../..};
+FT_TEST_BASE_DIR=${FT_TEST_BASE_DIR:-$HOME/base}
+FT_TEST_TEST_DIR=${FT_TEST_TEST_DIR:-../..}
 
-FT_TEST_BASE_DLL=${FT_TEST_BASE_DLL:-$FT_TEST_BASE_DIR/objs/.libs/libfreetype.so};
-FT_TEST_TEST_DLL=$FT_TEST_TEST_DIR/objs/.libs/libfreetype.so
-#####################################################################
-declare -A arr
-arr["MONO"]=0
-arr+=(["AA"]=1 ["RGB"]=2 ["BGR"]=3 ["VRGB"]=4 ["VBGR"]=5)
+FT_TEST_BASE_DLL=${FT_TEST_BASE_DLL:-$FT_TEST_BASE_DIR/objs/.libs/libfreetype.so}
+FT_TEST_TEST_DLL=${FT_TEST_TEST_DLL:-$FT_TEST_TEST_DIR/objs/.libs/libfreetype.so}
 #####################################################################
 mkdir ./html/pages
-touch ./html/top.html;
+touch ./html/top.html
 #####################################################################
 echo '
 <!DOCTYPE html>
@@ -32,60 +30,56 @@ echo '
       <iframe id="frame_1" name="frame_1" src="" ></iframe>
       <iframe id="frame_2" name="frame_2" src="diff.html" ></iframe>
       <div class="select">
-    '>./html/top.html;
+    '>./html/top.html
 #####################################################################
 for i in $FT_TEST_DPI; do
   mkdir ./html/pages/$i
   for j in $FT_TEST_FONT_FILE; do
     mkdir ./html/pages/$i/$j
     for k in $FT_TEST_RENDER_MODE; do
-      mkdir ./html/pages/$i/$j/${arr[$k]}
+      mkdir ./html/pages/$i/$j/$k
       for l in $FT_TEST_PT_SIZE; do
-        mkdir ./html/pages/$i/$j/${arr[$k]}/$l
-        mkdir ./html/pages/$i/$j/${arr[$k]}/$l/images
-        ./tests $FT_TEST_BASE_DLL $FT_TEST_TEST_DLL $j $l ${arr[$k]} $i
+        mkdir ./html/pages/$i/$j/$k/$l
+        mkdir ./html/pages/$i/$j/$k/$l/images
+        ./tests $FT_TEST_BASE_DLL $FT_TEST_TEST_DLL $j $l $k $i
       done
     done
   done
 done
 #####################################################################
-echo '<label>DPI&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="dpi" 
id="dpi" onchange="change()">'>>./html/top.html;
+echo '<label>DPI&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="dpi" 
id="dpi" onchange="change()">'>>./html/top.html
 for i in $FT_TEST_DPI; do
-  echo "  <option value= $i > $i </option>">>./html/top.html;
+  echo "  <option value= $i > $i </option>">>./html/top.html
 done
 echo '</select>
-    </label><br>'>>./html/top.html;
+    </label><br>'>>./html/top.html
 #####################################################################
-echo '<label>Font&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="font" 
id="font" onchange="change()">'>>./html/top.html;
+echo '<label>Font&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="font" 
id="font" onchange="change()">'>>./html/top.html
 for i in $FT_TEST_FONT_FILE; do
-  echo "  <option value= $i > $i </option>">>./html/top.html;
+  echo "  <option value= $i > $i </option>">>./html/top.html
 done
 echo '</select>
-    </label><br>'>>./html/top.html;
+    </label><br>'>>./html/top.html
 #####################################################################
-echo '<label>Render Mode:<select name="mode" id="mode" 
onchange="change()">'>>./html/top.html;
+echo '<label>Render Mode:<select name="mode" id="mode" 
onchange="change()">'>>./html/top.html
 for i in $FT_TEST_RENDER_MODE; do
-  echo "  <option value= ${arr[$i]} > $i </option>">>./html/top.html;
+  echo "  <option value= $i > $i </option>">>./html/top.html
 done
 echo '</select>
-    </label><br>'>>./html/top.html;
+    </label><br>'>>./html/top.html
 #####################################################################
-echo '<label>Size&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="size" 
id="size" onchange="change()">'>>./html/top.html;
+echo '<label>Size&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp:<select name="size" 
id="size" onchange="change()">'>>./html/top.html
 for i in $FT_TEST_PT_SIZE; do
-  echo "  <option value= $i > $i </option>">>./html/top.html;
+  echo "  <option value= $i > $i </option>">>./html/top.html
 done
 echo '</select>
-    </label><br>'>>./html/top.html;
+    </label><br>'>>./html/top.html
 #####################################################################
 echo '</div>
     </body>
-  </html>'>>./html/top.html;
+  </html>'>>./html/top.html
 #####################################################################
 echo "Font       : " $FT_TEST_FONT_FILE
-echo "Size       : " $FT_TEST_PT_SIZE
+echo "Point Size : " $FT_TEST_PT_SIZE
 echo "Render_Mode: " $FT_TEST_RENDER_MODE
 echo "DPI        : " $FT_TEST_DPI
-
-
-
-



reply via email to

[Prev in Thread] Current Thread [Next in Thread]