/*	
 *	clipfnt8.h
 *
 *	8ドットフォント描画ルーチンを定義します。
 *
 *	CLiP - Common Library for P/ECE
 *	Copyright (C) 2001-2008 Naoyuki Sawa
 *
 *	* Sat Mar 08 22:02:58 JST 2008 Naoyuki Sawa
 *	- 1st リリース。
 *	* Wed Nov 18 21:37:53 JST 2015 Naoyuki Sawa
 *	- 'extern "C" {'〜'}'で囲みました。.cppを含むWin32プロジェクトからもインクルード出来るようにするためです。
 */
#ifndef __CLIP_FNT8_H__
#define __CLIP_FNT8_H__

#ifdef  __cplusplus
extern "C" {
#endif//__cplusplus

/*****************************************************************************
 *	
 *****************************************************************************/

/* render_string8()、render_printf8()、render_string8_framed()、render_printf8_framed()で、
 * 文字列を描画するときの、文字間隔を設定します。
 * render_font8()、render_font8_framed()には影響しません。
 */
extern unsigned char font8_w; /* 文字間隔(横) */
extern unsigned char font8_h; /* 文字間隔(縦) */

/*****************************************************************************
 *	
 *****************************************************************************/

/* 文字を描きます。
 * [note]
 *	* render_font()と互換です。
 *	  render_font()の説明を参照してください。
 */
int render_font8(RENDER* render, int x, int y, int code, int color);

/* 文字列を描きます。
 * [note]
 *	* render_string()と互換です。
 *	  render_string()の説明を参照してください。
 *	* 文字列中で、SO('\xe')/SI('\xf')を使って、半角カタカナと半角ひらがなを切り替えられます。
 *	  <例> "ｶﾀｶﾅ\xfﾋﾗｶﾞﾅ\xeｶﾀｶﾅ" → "カタカナひらがなカタカナ"
 */
int render_string8(RENDER* render, int x, int y, const char* _str, int color);

/* 書式付き文字列を描きます。
 * [note]
 *	* render_printf8()と互換です。
 *	  render_printf8()の説明を参照してください。
 *	* 文字列中で、SO('\xe')/SI('\xf')を使って、半角カタカナと半角ひらがなを切り替えられます。
 *	  <例> "ｶﾀｶﾅ\xfﾋﾗｶﾞﾅ\xeｶﾀｶﾅ" → "カタカナひらがなカタカナ"
 */
int render_printf8(RENDER* render, int x, int y, int color, const char* fmt, ...);

/* 縁取り文字を描きます。
 * [note]
 *	* render_font_framed()と互換です。
 *	  render_font_framed()の説明を参照してください。
 */
int render_font8_framed(RENDER* render, int x, int y, int code, int color);

/* 縁取り文字列を描きます。
 * [note]
 *	* render_string_framed()と互換です。
 *	  render_string_framed()の説明を参照してください。
 *	* 文字列中で、SO('\xe')/SI('\xf')を使って、半角カタカナと半角ひらがなを切り替えられます。
 *	  <例> "ｶﾀｶﾅ\xfﾋﾗｶﾞﾅ\xeｶﾀｶﾅ" → "カタカナひらがなカタカナ"
 */
int render_string8_framed(RENDER* render, int x, int y, const char* str, int color);

/* 書式付き縁取り文字列を描きます。
 * [note]
 *	* render_printf_framed()と互換です。
 *	  render_printf_framed()の説明を参照してください。
 *	* 文字列中で、SO('\xe')/SI('\xf')を使って、半角カタカナと半角ひらがなを切り替えられます。
 *	  <例> "ｶﾀｶﾅ\xfﾋﾗｶﾞﾅ\xeｶﾀｶﾅ" → "カタカナひらがなカタカナ"
 */
int render_printf8_framed(RENDER* render, int x, int y, int color, const char* fmt, ...);

#ifdef  __cplusplus
}//extern "C"
#endif//__cplusplus

#endif /*__CLIP_FNT8_H__*/
