[MPlayer-cvslog] r26066 - in trunk/libass: ass_utils.c ass_utils.h

eugeni subversion at mplayerhq.hu
Fri Feb 22 20:31:51 CET 2008


Author: eugeni
Date: Fri Feb 22 20:31:51 2008
New Revision: 26066

Log:
Some debugging routines.


Modified:
   trunk/libass/ass_utils.c
   trunk/libass/ass_utils.h

Modified: trunk/libass/ass_utils.c
==============================================================================
--- trunk/libass/ass_utils.c	(original)
+++ trunk/libass/ass_utils.c	Fri Feb 22 20:31:51 2008
@@ -22,6 +22,8 @@
 
 #include <stdlib.h>
 #include <inttypes.h>
+#include <ft2build.h>
+#include FT_GLYPH_H
 
 #include "mputils.h"
 #include "ass_utils.h"
@@ -79,3 +81,27 @@ int strtocolor(char** q, uint32_t* res)
 	return result;
 }
 
+static void sprint_tag(uint32_t tag, char* dst)
+{
+	dst[0] = (tag >> 24) & 0xFF;
+	dst[1] = (tag >> 16) & 0xFF;
+	dst[2] = (tag >> 8) & 0xFF;
+	dst[3] = tag & 0xFF;
+	dst[4] = 0;
+}
+
+void dump_glyph(FT_Glyph g)
+{
+	char tag[5];
+	int i;
+	FT_OutlineGlyph og = (FT_OutlineGlyph)g;
+	FT_Outline* o = &(og->outline);
+	sprint_tag(g->format, tag);
+	printf("glyph: %p \n", g);
+	printf("format: %s \n", tag);
+	printf("outline: %p \n", o);
+	printf("contours: %d, points: %d, points ptr: %p \n", o->n_contours, o->n_points, o->points);
+	for (i = 0; i < o->n_points; ++i) {
+		printf("  point %f, %f \n", d6_to_double(o->points[i].x), d6_to_double(o->points[i].y));
+	}
+}

Modified: trunk/libass/ass_utils.h
==============================================================================
--- trunk/libass/ass_utils.h	(original)
+++ trunk/libass/ass_utils.h	Fri Feb 22 20:31:51 2008
@@ -25,6 +25,7 @@ int mystrtoi(char** p, int base, int* re
 int mystrtou32(char** p, int base, uint32_t* res);
 int mystrtod(char** p, double* res);
 int strtocolor(char** q, uint32_t* res);
+void dump_glyph(FT_Glyph g);
 
 static inline int d6_to_int(int x) {
 	return (x + 32) >> 6;



More information about the MPlayer-cvslog mailing list