aboutsummaryrefslogtreecommitdiff
path: root/source/nds/bdf_font.h
diff options
context:
space:
mode:
authorKitty Draper2011-03-05 21:39:25 -0500
committerKitty Draper2011-03-05 21:39:25 -0500
commitd40ae99422e118188a7f48055dc340c6aca022aa (patch)
tree83ab93f49fd9e66e43bcd824091ae1dbcaa0c173 /source/nds/bdf_font.h
downloadsnes9x2005-d40ae99422e118188a7f48055dc340c6aca022aa.tar.gz
snes9x2005-d40ae99422e118188a7f48055dc340c6aca022aa.tar.bz2
snes9x2005-d40ae99422e118188a7f48055dc340c6aca022aa.zip
first commit
Diffstat (limited to 'source/nds/bdf_font.h')
-rw-r--r--source/nds/bdf_font.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/source/nds/bdf_font.h b/source/nds/bdf_font.h
new file mode 100644
index 0000000..074f5de
--- /dev/null
+++ b/source/nds/bdf_font.h
@@ -0,0 +1,64 @@
+/* bdf_font.h
+ *
+ * Copyright (C) 2010 dking <dking024@gmail.com>
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public Licens e as
+ * published by the Free Software Foundation; either version 2 of
+ * the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef __BDF_FONT_H__
+#define __BDF_FONT_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+struct bdffont{
+ unsigned int dwidth; //byte 3:2 x-distance; 1:0 y-distance
+ unsigned int bbx; //byte 3 x-width; 2 y-height; 1 x-offset; 0 y-offset
+ unsigned char *bitmap;
+};
+
+struct bdflibinfo{
+ unsigned int width;
+ unsigned int height;
+ unsigned int start;
+ unsigned int span;
+ unsigned int maplen;
+ unsigned char *mapmem;
+ struct bdffont *fonts;
+};
+
+
+/*-----------------------------------------------------------------------------
+------------------------------------------------------------------------------*/
+extern int BDF_font_init(void);
+extern void BDF_render_string(void* screen_address, unsigned int x, unsigned int y, unsigned int back,
+ unsigned int front, char *string);
+extern unsigned int BDF_render16_ucs(void* screen_address, unsigned int screen_w,
+ unsigned int v_align, unsigned int back, unsigned int front, unsigned short ch);
+extern void BDF_render_mix(void* screen_address, unsigned int screen_w, unsigned int x,
+ unsigned int y, unsigned int v_align, unsigned int back, unsigned int front, char *string);
+//extern unsigned int BDF_string_width(char *string, unsigned int *len);
+extern char* utf8decode(char *utf8, unsigned short *ucs);
+extern unsigned char* skip_utf8_unit(unsigned char* utf8, unsigned int num);
+extern unsigned int BDF_cut_unicode(unsigned short *unicodes, unsigned int len, unsigned int width, unsigned int direction);
+extern unsigned int BDF_cut_string(char *string, unsigned int width, unsigned int direction);
+extern void BDF_font_release(void);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //__BDF_FONT_H__