TwlToolsRED/tests/SimpleFontViewSD/textdemolib/include/g2d_textdemolib/txt.h
yoshida_teruhisa e69bf8e098 NitroSystem の textdemolib をごくごく一部改造して使っていたので、その周辺のソースも含める(たいしたサイズでもないので)
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlToolsRED@275 7061adef-622a-194b-ae81-725974e89856
2009-05-20 02:45:18 +00:00

212 lines
6.0 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*---------------------------------------------------------------------------*
Project: NITRO-System - demos - g2d - Text - textdemolib - include - g2d_textdemolib
File: txt.h
Copyright 2004-2008 Nintendo. All rights reserved.
These coded instructions, statements, and computer programs contain
proprietary information of Nintendo of America Inc. and/or Nintendo
Company Ltd., and are protected by Federal copyright law. They may
not be disclosed to third parties or copied or duplicated in any form,
in whole or in part, without the prior written consent of Nintendo.
$Revision$
*---------------------------------------------------------------------------*/
#ifndef TEXT_H_
#define TEXT_H_
#include <nnsys/g2d/g2d_Font.h>
#ifdef __cplusplus
extern "C" {
#endif
// DrawText での左上寄せ
#define TXT_DRAWTEXT_FLAG_DEFAULT (NNS_G2D_VERTICALORIGIN_TOP | NNS_G2D_HORIZONTALORIGIN_LEFT | NNS_G2D_HORIZONTALALIGN_LEFT)
// デモ用フォントリソース名
#define TXT_FONTRESOURCE_NAME "/data/fonts.NFTR"
#define TXT_SJIS_FONTRESOURCE_NAME "/data/fonts.NFTR"
#define TXT_UTF8_FONTRESOURCE_NAME "/data/fontu8.NFTR"
#define TXT_UTF16_FONTRESOURCE_NAME "/data/fontu16.NFTR"
#define TXT_CP1252_FONTRESOURCE_NAME "/data/font1252.NFTR"
// TXTColorPalette の色名 16色パレットへのロードを想定
enum
{
// パレット0 TXT_CPALETTE_MAIN
TXT_COLOR_NULL=0,
TXT_COLOR_WHITE,
TXT_COLOR_BLACK,
TXT_COLOR_RED,
TXT_COLOR_GREEN,
TXT_COLOR_BLUE,
TXT_COLOR_CYAN,
TXT_COLOR_MAGENTA,
TXT_COLOR_YELLOW,
// パレット1 TXT_CPALETTE_USERCOLOR
TXT_UCOLOR_NULL=0,
TXT_UCOLOR_GRAY,
TXT_UCOLOR_BROWN,
TXT_UCOLOR_RED,
TXT_UCOLOR_PINK,
TXT_UCOLOR_ORANGE,
TXT_UCOLOR_YELLOW,
TXT_UCOLOR_LIMEGREEN,
TXT_UCOLOR_DARKGREEN,
TXT_UCOLOR_SEAGREEN,
TXT_UCOLOR_TURQUOISE,
TXT_UCOLOR_BLUE,
TXT_UCOLOR_DARKBLUE,
TXT_UCOLOR_PURPLE,
TXT_UCOLOR_VIOLET,
TXT_UCOLOR_MAGENTA,
// パレット TXT_CPALETTE_4BPP
TXT_COLOR_4BPP_NULL=0,
TXT_COLOR_4BPP_BG=1,
TXT_COLOR_4BPP_TEXT=1
};
// TXTColorPalette のパレット名 16色パレットへのロードを想定
enum
{
TXT_CPALETTE_MAIN,
TXT_CPALETTE_USERCOLOR,
TXT_CPALETTE_4BPP,
TXT_NUM_CPALEETE
};
// 共通カラーパレットデータ
extern GXRgb TXTColorPalette[TXT_NUM_CPALEETE * 16];
//****************************************************************************
//
//****************************************************************************
/*---------------------------------------------------------------------------*
Name: TXT_Init
Description: サンプル共通の初期化。
Arguments: なし。
Returns: なし。
*---------------------------------------------------------------------------*/
void TXT_Init(void);
/*---------------------------------------------------------------------------*
Name: TXT_SetupBackground
Description: メイン画面BG0に背景画像をロード表示します。
Arguments: なし。
Returns: なし。
*---------------------------------------------------------------------------*/
void TXT_SetupBackground( void );
/*---------------------------------------------------------------------------*
Name: TXT_Alloc
Description: メモリを確保します。
Arguments: size: 確保するメモリのサイズ
Returns: 確保したメモリ領域へのポインタ。
*---------------------------------------------------------------------------*/
void* TXT_Alloc(u32 size);
/*---------------------------------------------------------------------------*
Name: TXT_Free
Description: TXT_Alloc() で確保したメモリを解放します。
Arguments: ptr: 開放するメモリ領域へのポインタ。
Returns: なし。
*---------------------------------------------------------------------------*/
void TXT_Free(void* ptr);
/*---------------------------------------------------------------------------*
Name: TXT_SetCharCanvasOBJAttrs
Description: 連続するOAMのNNS_G2dArrangeOBJ* で設定されないパラメータを
まとめて設定します。
Arguments: oam: 対象の OAM 列の先頭
num: 対象の OAM の個数
priority: 表示優先順位(03)
mode: OBJモード
mosaic: モザイクの有無
effect: エフェクトの種類
cParam: カラーパラメータ
rsParam: アフィン変換パラメータインデックス
Returns: なし。
*---------------------------------------------------------------------------*/
void TXT_SetCharCanvasOBJAttrs(
GXOamAttr * oam,
int num,
int priority,
GXOamMode mode,
BOOL mosaic,
GXOamEffect effect,
int cParam,
int rsParam
);
/*---------------------------------------------------------------------------*
Name: TXT_LoadFont
Description: フォントをファイルからメモリにロードします。
Arguments: pFname: フォントリソースのパス。
Returns: ロードしたフォントファイルへのポインタ。
*---------------------------------------------------------------------------*/
void* TXT_LoadFont( NNSG2dFont* pFont, const char* pFname );
void TXT_UnloadFont( void* pFile );
/*---------------------------------------------------------------------------*
Name: TXT_LoadFile
Description: ファイルをメモリにロードします。
Arguments: ppFile: ファイルをロードしたメモリアドレスを受け取る
バッファへのポインタ。
fpath: ロードするファイルのパス
Returns: ロードしたファイルのファイルサイズを返します。
0 の場合はファイルロードに失敗した事を表します。
この場合 *ppFile の値は無効です。
*---------------------------------------------------------------------------*/
u32 TXT_LoadFile(void** ppFile, const char* fpath);
#ifdef __cplusplus
}/* extern "C" */
#endif
#endif // TEXT_H_