SophiaFramework UNIVERSE 5.3 |
SFXGraphics クラスは、 SFBGraphics クラスと SFBDisplay クラスを抽象化したクラスであり、 図形やテキストを描画するときに利用します。
SFXGraphics クラスは、 SFBGraphics クラスの図形を描画するための関数と SFBDisplay クラスのテキストを描画するための関数を継承しているため、 図形とテキストの描画に関してクリッピングや原点の移動などが簡単に行えます。
図形やテキストを描画するための SFXGraphics インスタンスは、 アプリ起動時に自動的に生成され、アプリ終了時に自動的に解放されます。 そのため、SFXGraphics インスタンスの初期化処理や終了処理は不要です。
SFXGraphics インスタンスは、 SFXGraphics::GetInstance 関数を使用して取得します。 あるいは、描画ハンドラの引数として渡されます。
描画の対象となるターゲットビットマップは、SFXGraphics::SetDestination 関数で設定します。 デフォルトの設定では、デバイスビットマップがターゲットビットマップです。
GUI フレームワークを利用する場合は、 レスポンダ領域(ローカル領域)の左上端を原点とする相対座標系で描画を行えるように自動的に原点が移動します。
描画内容を実際に画面に反映させるには、 SFXGraphics::BitBlt 関数を呼び出してターゲットビットマップの内容をデバイスビットマップに転送し(デフォルトの設定の場合は不要)、 SFXGraphics::Update 関数を呼び出す必要があります。 GUI フレームワークを使用する場合、この処理は SFYResponder::Render 関数内で自動的に行われます(SFXGraphics::Update 関数の呼び出しは不要です)。
注意 | |
---|---|
SFBGraphics クラスを直接使用する場合、 SFXGraphics クラスの関数を使用して設定した内容が上書きされる可能性があります。 |
[ public ] Void BitBlt( SFXRectangleConstRef rectangle // 転送先の矩形 SFBBitmapSmpConstRef bitmap // 転送元ビットマップ SFXGridConstRef grid // 転送元ビットマップの左上隅の座標 AEERasterOp raster = AEE_RO_COPY // 転送モード );
[ public ] Void BitBlt( SFXRectangleConstRef rectangle // 転送先の矩形(矩形の左上隅は転送元ビットマップの左上隅の座標でもある) SFBBitmapSmpConstRef bitmap // 転送元ビットマップ AEERasterOp raster = AEE_RO_COPY // 転送モード );
この関数は、 指定したビットマップをレンダリング対象となるターゲットビットマップ内の指定した矩形領域に転送します。
注意 | |
---|---|
ターゲットビットマップがデバイスビットマップである場合、 表示ハードウェア(画面)を更新するには、 "SFXGraphics::Update();"を呼び出す必要があります。 |
SFBDisplay::BitBlt | SFXGraphics::SetDestination | SFXGraphics::Update | BREW API IDISPLAY_BitBlt | SFXGraphics::Update | SFXRectangle | SFBBitmap | SFXGrid | AEERasterOp
[ public ] Void ClearRectangle( SFXRectangleConstRef rectangle // 矩形 );
[ public ] Void ClearRectangle( SFXRectangleConstRef rectangle // 矩形 SFXRGBColorConstRef color // 描画色 );
この関数は指定された矩形領域を背景色で塗り潰します。
color 引数が指定された場合は、 背景色を引数に指定された色に設定します。
SFXGraphics::SetBackColor | SFBGraphics::ClearRect | BREW API IGRAPHICS_ClearRect | SFXGraphics::DrawRectangle
[ public, const ] SFBBitmapSmp CloneBitmap( SFXRectangleConstRef param // コピー元となる矩形領域 );
この関数は、 レンダリング対象となっているターゲットビットマップから指定された矩形領域を抜き出し、 デバイスビットマップと互換性のあるビットマップを生成します。
SFXGraphics::CreateBitmap | SFXGraphics::SetDestination | SFBDisplay::GetDeviceBitmap | SFBBitmap::CreateCompatibleBitmap | SFBBitmap::BltIn | SFXRectangle | SFBBitmap | BREW API IDisplay_GetDeviceBitmap | BREW API IDisplay_IDISPLAY_GetDestination | BREW API IBitmap_CreateCompatibleBitmap
[ public, static ] SFBBitmapSmp CreateBitmap( SFXSizeConstRef param // 作成するビットマップのサイズ );
この関数は、デバイスビットマップと互換性のある、指定したサイズのビットマップを作成します。
ビットマップの互換性 | |
---|---|
ビットマップの互換性は、ピクセルサイズが等しく、同じピクセル値マッピング(ネイティブカラー)と RGB 値を持つことを意味します。幅と高さは関係ありません。 互換性のある 2 つのビットマップでのビット操作は、ピクセルデータの変換が不要なので、 効率良く高速に行われます。 また、互換性のあるビットマップ間では、コピーにより色情報が失われることはありません。 互換ビットマップでは、元のビットマップでサポートされているすべての描画操作をサポートされます。 |
SFXGraphics::CloneBitmap | SFBDisplay::GetDeviceBitmap | SFBBitmap::CreateCompatibleBitmap | SFBBitmap | BREW API IDisplay_GetDeviceBitmap | BREW API IBitmap_CreateCompatibleBitmap
[ public ] Void DrawArc( SFXArcConstRef arc // 描画する円弧 );
[ public ] Void DrawArc( SFXArcConstRef arc // 描画する円弧 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
[ public ] Void DrawBevel( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー Bool left // 左辺を描画するかどうか Bool top // 上辺を描画するかどうか Bool right // 右辺を描画するかどうか Bool bottom // 下辺を描画するかどうか );
この関数は、以下の処理を行います。
前景色を引数に指定されたベースカラーに設定します。
ベベルの枠の左辺、上辺、右辺、下辺を描画するかどうかは、left、top、right、bottom 引数で指定できます。
ベベルの左辺と上辺は color 引数のライトカラー(明るい色)、右辺と下辺は color 引数のダークカラー(暗い色)で描画します。
上辺と右辺の両方を同時に描画する場合、右上隅の頂点は color 引数のベースカラーで描画します。 同様に、左辺と下辺の両方を同時に描画する場合も、左下隅の頂点は color 引数のベースカラーで描画します。
ベベルとは | |
---|---|
ベベルとは、明るい色の辺(左辺と上辺)と暗い色の辺(右辺と下辺)から構成されて立体的に見える矩形のことです。 |
[ public ] Void DrawBevelBottom( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, false, true, true); と同等です。
[ public ] Void DrawBevelCenter( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, false, true, false, true); と同等です。
[ public ] Void DrawBevelHorizontal( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, false, true, false, true); と同等です。
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::DrawBevelCenter 関数を利用することを推奨します。 |
[ public ] Void DrawBevelLeft( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, true, false, true); と同等です。
[ public ] Void DrawBevelMiddle( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, false, true, false); と同等です。
[ public ] Void DrawBevelRectangle( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, true, true, true); と同等です。
[ public ] Void DrawBevelRight( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, false, true, true, true); と同等です。
[ public ] Void DrawBevelTop( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, true, true, false); と同等です。
[ public ] Void DrawBevelVertical( SFXRectangleConstRef rectangle // SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::DrawBevel(rectangle, color, true, false, true, false); と同等です。
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::DrawBevelMiddle 関数を利用することを推奨します。 |
[ public ] SFCError DrawBitmap( SFBBitmapSmpConstRef bitmap // 描画元ビットマップ SFXRectangleConstRef rectangle // 描画先の矩形領域 AEERasterOp raster = AEE_RO_COPY // 転送モード );
[ public ] SFCError DrawBitmap( SFBBitmapSmpConstRef bitmap // 描画元ビットマップ SFXGridConstRef grid // 描画先の座標 AEERasterOp raster = AEE_RO_COPY // 転送モード );
この関数は、SFXGraphics::BitBlt 関数を使用して指定したビットマップをレンダリング対象となっているターゲットビットマップ内の指定した矩形領域に描画します。
[ public ] Void DrawCircle( SFXCircleConstRef circle // 描画する円 );
[ public ] Void DrawCircle( SFXCircleConstRef circle // 描画する円 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawCircle | IGRAPHICS_DrawCircle | SFXGraphics::FillCircle | SFXCircle
[ public ] Void DrawEllipse( SFXEllipseConstRef ellipse // 描画する楕円 );
[ public ] Void DrawEllipse( SFXEllipseConstRef ellipse // 描画する楕円 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawEllipse | IGRAPHICS_DrawEllipse | SFXGraphics::FillEllipse | SFXEllipse
[ public ] Void DrawEllipticalArc( SFXRectangleConstRef rectangle // 楕円の外接矩形 SInt16 anchor // 弧の開始角度 (度単位) SInt16 degree // 弧の範囲角度 (度単位) );
[ public ] Void DrawEllipticalArc( SFXRectangleConstRef rectangle // 楕円の外接矩形 SInt16 anchor // 弧の開始角度 (度単位) SInt16 degree // 弧の範囲角度 (度単位) SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFBGraphics::DrawEllipticalArc | IGRAPHICS_DrawEllipticalArc | SFXGraphics::FillEllipticalArc
[ public ] Void DrawFrame( SFXRectangleConstRef rectangle // 描画する矩形 SFXFrameColorConstRef color // 枠の描画色 );
この関数は、 前景色を枠のシャドウカラー、塗り潰しモードは "false" に設定します。 そして、引数に指定した矩形領域を覆う枠領域を指定したフレームカラーで描画します。
[ public ] SFCError DrawImage( SFBImageSmpConstRef image // 描画するイメージ SFXGridConstRef grid // 描画先の座標 );
[ public ] SFCError DrawImage( SFBImageSmpConstRef image // 描画するイメージ SFXGridConstRef grid // 描画先の座標 AEERasterOp raster // 転送モード );
この関数は、レンダリング対象となっているターゲットビットマップ内の指定した位置に指定したイメージを描画します。
SFXGraphics::SetDestination | SFBImage::SetDisplay | SFBImage::Draw | SFBImage | SFXGrid | AEERasterOp
[ public ] Void DrawLine( SFXLineConstRef line // 描画する直線 );
[ public ] Void DrawLine( SFXLineConstRef line // 描画する直線 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
[ public ] Void DrawMultipleTextCenter( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 );
[ public ] Void DrawMultipleTextCenter( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 );
[ public ] Void DrawMultipleTextCenter( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SInt16 wrap // 最大幅 );
[ public ] Void DrawMultipleTextCenter( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 SInt16 wrap // 最大幅 );
この関数は、 指定された座標にテキストを描画します。 テキストは rectangle 引数に指定された矩形領域でクリッピングされて描画されます。
wrap 引数に最大幅が指定された場合は、 テキストは最大幅で折り返して複数行テキストとして描画されます。 このとき、各行はテキスト描画領域内で中央揃えされます。 指定されなかった場合は、単一行テキストとして描画されます。
注意 | |
---|---|
内部の実装により、テキストは BREW API IDISPLAY フラグ の IDF_TEXT_TRANSPARENT フラグを ON にして透過表示されます。 |
SFBDisplay::DrawText | BREW API IDISPLAY_DrawText | BREW API IDISPLAY フラグ | SFXGraphics::DrawMultipleTextLeft | SFXGraphics::DrawMultipleTextRight | SFXGraphics::DrawSingleText
[ public ] Void DrawMultipleTextLeft( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 );
[ public ] Void DrawMultipleTextLeft( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 );
[ public ] Void DrawMultipleTextLeft( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SInt16 wrap // 最大幅 );
[ public ] Void DrawMultipleTextLeft( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 SInt16 wrap // 最大幅 );
この関数は、 指定された座標にテキストを描画します。 テキストは rectangle 引数に指定された矩形領域でクリッピングされて描画されます。
wrap 引数に最大幅が指定された場合は、 テキストは最大幅で折り返して複数行テキストとして描画されます。 このとき、各行はテキスト描画領域内で左揃えされます。 指定されなかった場合は、単一行テキストとして描画されます。
注意 | |
---|---|
内部の実装により、テキストは BREW API IDISPLAY フラグ の IDF_TEXT_TRANSPARENT フラグを ON にして透過表示されます。 |
SFBDisplay::DrawText | BREW API IDISPLAY_DrawText | BREW API IDISPLAY フラグ | SFXGraphics::DrawMultipleTextCenter | SFXGraphics::DrawMultipleTextRight | SFXGraphics::DrawSingleText
[ public ] Void DrawMultipleTextRight( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 );
[ public ] Void DrawMultipleTextRight( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 );
[ public ] Void DrawMultipleTextRight( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SInt16 wrap // 最大幅 );
[ public ] Void DrawMultipleTextRight( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 SInt16 wrap // 最大幅 );
この関数は、 指定された座標にテキストを描画します。 テキストは rectangle 引数に指定された矩形領域でクリッピングされて描画されます。
wrap 引数に最大幅が指定された場合は、 テキストは最大幅で折り返して複数行テキストとして描画されます。 このとき、各行はテキスト描画領域内で右揃えされます。 指定されなかった場合は、単一行テキストとして描画されます。
注意 | |
---|---|
内部の実装により、テキストは BREW API IDISPLAY フラグ の IDF_TEXT_TRANSPARENT フラグを ON にして透過表示されます。 |
SFBDisplay::DrawText | BREW API IDISPLAY_DrawText | BREW API IDISPLAY フラグ | SFXGraphics::DrawMultipleTextLeft | SFXGraphics::DrawMultipleTextCenter | SFXGraphics::DrawSingleText
[ public ] Void DrawPie( SFXPieConstRef pie // 描画する扇形 );
[ public ] Void DrawPie( SFXPieConstRef pie // 描画する扇形 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawPie | IGRAPHICS_DrawPie | SFXGraphics::FillPie | SFXPie
[ public ] Void DrawPixel( SFXPixelConstRef pixel // 描画する点 );
[ public ] Void DrawPixel( SFXPixelConstRef pixel // 描画する点 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
[ public ] Void DrawPolygon( SFXPolygonConstRef polygon // 描画する多角形 );
[ public ] Void DrawPolygon( SFXPolygonConstRef polygon // 描画する多角形 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawPolygon | IGRAPHICS_DrawPolygon | SFXGraphics::FillPolygon | SFXPolygon
[ public ] Void DrawPolyline( SFXPolylineConstRef polyline // 描画する多角線 );
[ public ] Void DrawPolyline( SFXPolylineConstRef polyline // 描画する多角線 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
[ public ] Void DrawRectangle( SFXRectangleConstRef rectangle // 描画する矩形 );
[ public ] Void DrawRectangle( SFXRectangleConstRef rectangle // 描画する矩形 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawRect | IGRAPHICS_DrawRect | SFXGraphics::FillRectangle | SFXRectangle
[ public ] Void DrawRoundRectangle( SFXRectangleConstRef rectangle // 外接する矩形 SFXSizeConstRef size // 角の楕円の幅と高さ );
[ public ] Void DrawRoundRectangle( SFXRectangleConstRef rectangle // 外接する矩形 SFXSizeConstRef size // 角の楕円の幅と高さ SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawRoundRectangle | IGRAPHICS_DrawRoundRectangle | SFXGraphics::FillRoundRectangle
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ IDF_ALIGN_NONE の場合、テキストは rectangle 領域の中央に配置される) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ IDF_ALIGN_NONE の場合、テキストは rectangle 領域の中央に配置される) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画開始位置 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画開始位置 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画開始位置 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ IDF_ALIGN_NONE の場合、テキストは rectangle 領域の中央に配置される) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ IDF_ALIGN_NONE の場合、テキストは rectangle 領域の中央に配置される) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画開始位置 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画開始位置 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画開始位置 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
[ public ] Void DrawSingleText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画開始位置 SFXRectangleConstRef rectangle // 表示範囲矩形(クリッピング領域) SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // IDISPLAY フラグ(※ grid 引数が指定される場合、位置揃えフラグの指定は無効になる) );
この関数は、 指定された座標またはクリッピング領域に単一行テキストを描画します。 align 引数には、位置揃えなどを行う BREW API IDISPLAY フラグ を指定できます。 テキストは、IDF_TEXT_TRANSPARENT フラグを ON にして透過表示されます。
IDISPLAY フラグの指定方法 | |
---|---|
たとえば、「左詰め・上詰め」は"IDF_ALIGN_LEFT | IDF_ALIGN_TOP"、 「右詰め・下詰め」は"IDF_ALIGN_RIGHT | IDF_ALIGN_BOTTOM"というように論理和で組み合わせて指定します。 |
位置揃えフラグ | |
---|---|
grid 引数が指定される場合、align 引数への IDF_ALIGN_*** フラグ(位置揃えフラグ)の指定は無効になります。 このとき、 テキストは align 引数に指定した左右位置揃えフラグ(IDF_ALIGN_LEFT, IDF_ALIGN_CENTER,IDF_ALIGN_RIGHT)や 上下位置揃えフラグ(IDF_ALIGN_TOP, IDF_ALIGN_MIDDLE,IDF_ALIGN_BOTTOM)の位置揃えではなく、 grid 引数に指定した位置に描画されます。(※ IDF_TEXT_UNDERLINE など IDF_ALIGN_*** 以外のフラグは有効です。) 逆に、grid 引数が指定されない場合は、位置揃えフラグが有効となり、テキストは rectangle 引数で指定されるクリッピング領域内で、 align 引数への IDF_ALIGN_*** フラグ(位置揃えフラグ)の指定に従って描画されます。 デフォルトの IDF_ALIGN_NONE の指定であれば、テキストはクリッピング領域の中央の位置に描画されます。 |
SFBDisplay::DrawText | BREW API IDISPLAY_DrawText | BREW API IDISPLAY フラグ | SFXGraphics::DrawText | SFXGraphics::DrawMultipleTextLeft | SFXGraphics::DrawMultipleTextCenter | SFXGraphics::DrawMultipleTextRight
[ public ] Void DrawString( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // 行中のテキストのアライメント SInt16 margin = 0 // マージン );
[ public ] Void DrawString( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 描画先の矩形領域 UInt32 align = IDF_ALIGN_NONE // 行中のテキストのアライメント SInt16 margin = 0 // マージン );
行中のテキストのアライメントも指定できます。 IDF_ALIGN_LEFT, IDF_ALIGN_CENTER, IDF_ALIGN_RIGHT, IDF_ALIGN_TOP,IDF_ALIGN_MIDDLE, IDF_ALIGN_BOTTOM が 指定できます。
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::DrawMultipleTextLeft / SFXGraphics::DrawMultipleTextCenter / SFXGraphics::DrawMultipleTextRight 関数を利用することを推奨します。 |
SFXGraphics::DrawMultipleTextLeft | SFXGraphics::DrawMultipleTextCenter | SFXGraphics::DrawMultipleTextRight
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画座標 SFXRectangleConstRef rectangle // 描画範囲の矩形 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画座標 SFXRectangleConstRef rectangle // 描画範囲の矩形 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXRectangleConstRef rectangle // 描画範囲の矩形 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXRectangleConstRef rectangle // 描画範囲の矩形 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画座標 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SFXGridConstRef grid // 描画座標 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画座標 SFXRectangleConstRef rectangle // 描画範囲の矩形 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画座標 SFXRectangleConstRef rectangle // 描画範囲の矩形 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 描画範囲の矩形 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXRectangleConstRef rectangle // 描画範囲の矩形 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画座標 SFXRGBColorConstRef color // 描画色 UInt32 align = IDF_ALIGN_NONE // アライメント );
[ public ] Void DrawText( SFXWideStringConstRef string // 描画テキスト SFXGridConstRef grid // 描画座標 UInt32 align = IDF_ALIGN_NONE // アライメント );
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::DrawSingleText 関数を利用することを推奨します。 |
[ public ] Void DrawTriangle( SFXTriangleConstRef triangle // 描画する三角形 );
[ public ] Void DrawTriangle( SFXTriangleConstRef triangle // 描画する三角形 SFXRGBColorConstRef color // 描画色 );
この関数の振る舞いは、color 引数が指定された場合とされない場合で以下のように異なります。
SFXGraphics::SetForeColor | SFXGraphics::SetFillMode | SFBGraphics::DrawTriangle | IGRAPHICS_DrawTriangle | SFXGraphics::FillTriangle | SFXTriangle
[ public ] Void FillBevel( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー Bool left // 左辺を描画するかどうか Bool top // 上辺を描画するかどうか Bool right // 右辺を描画するかどうか Bool bottom // 下辺を描画するかどうか );
この関数は、以下の処理を行います。
前景色と塗り潰し色を引数に指定したベースカラー、塗り潰しモードを "true" に設定します。
ベベルの枠の左辺、上辺、右辺、下辺を描画するかどうかは、left、top、right、bottom 引数で指定できます。
ベベルの左辺と上辺は color 引数のライトカラー(明るい色)、右辺と下辺は color 引数のダークカラー(暗い色)で描画します。
上辺と右辺の両方を同時に描画する場合、右上隅の頂点は color 引数のベースカラーで描画します。 同様に、左辺と下辺の両方を同時に描画する場合も、左下隅の頂点は color 引数のベースカラーで描画します。
更に、ベベルの内部は color 引数のベースカラーで塗り潰します。
ベベルとは | |
---|---|
ベベルとは、明るい色の辺(左辺と上辺)と暗い色の辺(右辺と下辺)から構成されて立体的に見える矩形のことです。 |
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawBevel | SFXBevelColor
[ public ] Void FillBevelBottom( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, false, true, true); と同等です。
[ public ] Void FillBevelCenter( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, false, true, false, true); と同等です。
[ public ] Void FillBevelHorizontal( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
... rectangle の説明 ...
... color の説明 ...
SFXGraphics::FillBevel(rectangle, color, false, true, false, true); と同等です。
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::FillBevelCenter 関数を利用することを推奨します。 |
[ public ] Void FillBevelLeft( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, true, false, true); と同等です。
[ public ] Void FillBevelMiddle( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, false, true, false); と同等です。
[ public ] Void FillBevelRectangle( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, true, true, true); と同等です。
[ public ] Void FillBevelRight( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, false, true, true, true); と同等です。
[ public ] Void FillBevelTop( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, true, true, false); と同等です。
[ public ] Void FillBevelVertical( SFXRectangleConstRef rectangle // 描画先の矩形領域 SFXBevelColorConstRef color // ベース、ライト、ダークを表すカラー );
SFXGraphics::FillBevel(rectangle, color, true, false, true, false); と同等です。
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::FillBevelMiddle 関数を利用することを推奨します。 |
[ public ] Void FillCircle( SFXCircleConstRef circle // 描画する円 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した円を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawCircle | SFXCircle
[ public ] Void FillEllipse( SFXEllipseConstRef ellipse // 描画する楕円 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した楕円を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawEllipse | SFXEllipse
[ public ] Void FillEllipticalArc( SFXRectangleConstRef rectangle // 楕円の外接矩形 SInt16 anchor // 弧の開始角度 (度単位) SInt16 degree // 弧の範囲角度 (度単位) SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した楕円弧を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawEllipticalArc
[ public ] Void FillPie( SFXPieConstRef pie // 描画する扇形 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した扇形を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawPie | SFXPie
[ public ] Void FillPolygon( SFXPolygonConstRef polygon // 描画する多角形 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した多角形を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawPolygon | SFXPolygon
[ public ] Void FillRectangle( SFXRectangleConstRef rectangle // 描画する矩形 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した矩形を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawRectangle | SFXRectangle
[ public ] Void FillRoundRectangle( SFXRectangleConstRef rectangle // 外接する矩形 SFXSizeConstRef size // 角の楕円の幅と高さ SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した角の丸い矩形を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawRoundRectangle
[ public ] Void FillTriangle( SFXTriangleConstRef triangle // 描画する三角形 SFXRGBColorConstRef color // 描画色 );
この関数は、 前景色と塗り潰し色を引数に指定した色、塗り潰しモードを "true" に設定します。 そして、引数に指定した三角形を描画します。
SFXGraphics::SetForeColor | SFXGraphics::SetFillColor | SFXGraphics::SetFillMode | SFXGraphics::DrawTriangle | SFXTriangle
[ public, const ] AEEAlgorithmHint GetAlgorithmHint(Void);
[ public, const ] SFXRGBColor GetBackColor(Void);
背景色
この関数は、現在設定されている背景色を取得します。
[ public, const ] SFXRectangle GetClip(Void);
クリッピング領域。
この関数は、SFXGraphics::SetClip 関数で設定したクリッピング領域を取得します。 クリッピング領域を設定していない場合は SFXRectangle(0, 0, -1, -1) が返ります。
注意 | |
---|---|
幅や高さが負の数であるクリッピング領域を設定した場合は、 0 に置き換ええられたクリッピング領域が返ります。 |
[ public, const ] UInt08 GetColorDepth(Void);
デバイスの色深度(モノクロであれば 1、グレースケールであれば 2、256 色であれば 8、... )
この関数は、SFBGraphics::GetColorDepth 関数の戻り値であるデバイスの色深度(nColorDepth)を返します。
SFBGraphics::GetColorDepth | SFBShell::GetDeviceInfo | BREW API IGRAPHICS_GetColorDepth | BREW API ISHELL_GetDeviceInfo | BREW API AEEDeviceInfo
[ public, const ] SFBBitmapSmp GetDestination(Void);
SFXGraphics クラスのレンダリング対象となるターゲットビットマップ
SFXGraphics クラスが内部で保持する SFBDisplay クラスと SFBGraphics クラスのレンダリング対象となるターゲットビットマップを取得します。
[ public, static ] SFBBitmapSmp GetDeviceBitmap(Void);
デバイスビットマップ
この関数は、デバイスビットマップを取得します。
デバイスビットマップ | |
---|---|
デバイスビットマップとは、 SFXGraphics::Update 関数を呼び出したときにその内容でデバイス画面が更新されるビットマップです。 |
[ public, static ] SFXRectangle GetDeviceRectangle(Void);
デバイス画面の左上端を原点とするデバイスの矩形
この関数は、デバイス画面の矩形[SFXRectangle(0, 0, cxScreen, cyScreen)]を返します。 cxScreen と cyScreen は、 それぞれ BREW API AEEDeviceInfo 構造体で定義されるデバイス画面の幅と高さです。
[ public, static ] SFXSize GetDeviceSize(Void);
デバイスのサイズ
この関数は、デバイス画面のサイズ[SFXSize(cxScreen, cyScreen)]を返します。 cxScreen と cyScreen は、 それぞれ BREW API AEEDeviceInfo 構造体で定義されるデバイス画面の幅と高さです。
[ public, const ] SFXRGBColor GetFillColor(Void);
塗り潰し色
この関数は、現在設定されている閉じた図形オブジェクトを塗り潰す色を取得します。
[ public, const ] Bool GetFillMode(Void);
塗り潰しモード
この関数は、現在設定されている閉じた図形オブジェクトを塗り潰すモードを取得します。
[ public, const ] AEEFont GetFont(Void);
フォント
この関数は、SFXGraphics::SetFont 関数で設定したフォントを返します。
[ public, const ] SInt16 GetFontAscent(Void);
[ public, static ] SInt16 GetFontAscent( AEEFont param // フォントの種類 );
フォントのアセント
この関数は、引数に指定したフォントのアセントを返します。 引数に何も指定しない場合は、 SFXGraphics::SetFont 関数で設定したフォントのアセントを返します。
SFXGraphics::GetFont | SFXGraphics::SetFont | SFXGraphics::GetFontDescent | SFXGraphics::GetFontHeight
[ public, const ] SInt16 GetFontDescent(Void);
[ public, static ] SInt16 GetFontDescent( AEEFont param // フォントの種類 );
フォントのディセント
この関数は、引数に指定したフォントのディセントを返します。 引数に何も指定しない場合は、 SFXGraphics::SetFont 関数で設定したフォントのディセントを返します。
SFXGraphics::GetFont | SFXGraphics::SetFont | SFXGraphics::GetFontAscent | SFXGraphics::GetFontHeight
[ public, const ] SInt16 GetFontHeight(Void);
[ public, static ] SInt16 GetFontHeight( AEEFont param // フォントの種類 );
フォントの高さ
この関数は、引数に指定したフォントの高さを返します。 引数に何も指定しない場合は、 SFXGraphics::SetFont 関数で設定したフォントの高さを返します。
SFXGraphics::GetFont | SFXGraphics::SetFont | SFXGraphics::GetFontAscent | SFXGraphics::GetFontDescent
[ public, const ] SFXRGBColor GetForeColor(Void);
前景色
この関数は、現在設定されている前景色を取得します。
[ public, static ] SFXGraphicsPtr GetInstance(Void);
アプリが内部に保持する SFXGraphics インスタンス
この関数は、アプリが内部に保持する SFXGraphics インスタンスを取得します。
SFXGraphics インスタンスはアプリ起動時に自動的に生成され、初期化されます。 このとき、 SFXGraphics インスタンスが内部で保持する SFBGraphics インスタンスと SFBDisplay インスタンスも自動的に生成されます。
注意 | |
---|---|
SFXGraphics インスタンスは、アプリ終了時に自動的に破棄されるので、 開発者が明示的に破棄する必要はありません。 |
[ public, const ] AEEPaintMode GetPaintMode(Void);
描画モード
この関数は、現在設定されている描画モードを取得します。
[ public, const ] UInt08 GetPixelSize(Void);
点の幅[単位: ピクセル]
この関数は、現在設定されている点のサイズ(幅)を取得します。[単位: ピクセル]
[ public, const ] SFBDisplaySmpConstRef GetSFBDisplay(Void);
SFXGraphics インスタンスが内部で保持する SFBDisplay インスタンス
この関数は、SFXGraphics インスタンスが内部で保持する SFBDisplay インスタンスを取得します。 SFBDisplay インスタンスは、 アプリ起動時に自動的に生成され、SFXGraphics インスタンスの内部に保持されています。
Tip | |
---|---|
直接 SFBDisplay インスタンスにアクセスすることにより、 その分だけ高速な処理が可能になります。 |
注意 | |
---|---|
SFBDisplay インスタンスに対して行う処理は、 SFXGraphics インスタンスには反映されません。 そのため、SFBDisplay クラスの Set 系関数を呼び出すと、 描画の整合性が崩れる可能性があります。 |
[ public, const ] SFBGraphicsSmpConstRef GetSFBGraphics(Void);
SFXGraphics インスタンスが内部で保持する SFBGraphics インスタンス
この関数は、SFXGraphics インスタンスが内部で保持する SFBGraphics インスタンスを取得します。 SFBGraphics インスタンスは、 アプリ起動時に自動的に生成され、SFXGraphics インスタンスの内部に保持されています。
Tip | |
---|---|
直接 SFBGraphics インスタンスにアクセスすることにより、 その分だけ高速な処理が可能になります。 |
注意 | |
---|---|
SFBGraphics インスタンスに対して行う処理は、 SFXGraphics インスタンスには反映されません。 そのため、SFBGraphics クラスの Set 系関数を呼び出すと、 描画の整合性が崩れる可能性があります。 |
[ public, const ] AEEStrokeStyle GetStrokeStyle(Void);
ストロークスタイル
この関数は、現在設定されているストロークスタイルを取得します。
[ public, const ] WChar GetSymbol( AEESymbol symbol // 記号 );
[ public, static ] WChar GetSymbol( AEEFont font // フォントの種類 AEESymbol symbol // 記号 );
指定された記号値に対応する文字
この関数は、指定された記号値に対応する文字を取得します。
注意 | |
---|---|
指定された記号がデバイス上に存在しない場合は、スペース文字 ' ' が返される。 |
[ public, const ] SFXGrid GetTranslate(Void);
現在のウィンドウの原点
この関数は、ワールド座標系でウィンドウの原点を返します。
[ public, static ] SFXSize MeasureMultipleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する複数行テキスト );
[ public, static ] SFXSize MeasureMultipleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する複数行テキスト SInt16 wrap // 最大幅 );
[ public, const ] SFXSize MeasureMultipleText( SFXWideStringConstRef string // 描画する複数行テキスト );
[ public, const ] SFXSize MeasureMultipleText( SFXWideStringConstRef string // 描画する複数行テキスト SInt16 wrap // 最大幅 );
[ public, static ] SInt16 MeasureSingleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する単一行テキスト );
[ public, static ] SInt16 MeasureSingleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する単一行テキスト SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, static ] SInt16 MeasureSingleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する単一行テキスト SInt32 length // 文字数 );
[ public, static ] SInt16 MeasureSingleText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画する単一行テキスト SInt32 length // 文字数 SInt16 limit // 最大幅 SInt16Ptr // 描画可能最大文字数 );
[ public, const ] SInt16 MeasureSingleText( SFXWideStringConstRef string // 描画する単一行テキスト );
[ public, const ] SInt16 MeasureSingleText( SFXWideStringConstRef string // 描画する単一行テキスト SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, const ] SInt16 MeasureSingleText( SFXWideStringConstRef string // 描画する単一行テキスト SInt32 length // 文字数 );
[ public, const ] SInt16 MeasureSingleText( SFXWideStringConstRef string // 描画する単一行テキスト SInt32 length // 文字数 SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, const ] SInt16 MeasureString( SFXWideStringConstRef string // 描画テキスト SInt16 width // 一行の横幅 SInt16 margin = 0 // マージン );
[ public, static ] SInt16 MeasureString( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画テキスト SInt16 width // 一行の横幅 SInt16 margin = 0 // マージン );
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::MeasureMultipleText 関数を利用することを推奨します。 |
[ public, const ] SInt16 MeasureText( SFXWideStringConstRef string // 描画テキスト );
[ public, const ] SInt16 MeasureText( SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, const ] SInt16 MeasureText( SFXWideStringConstRef string // 描画テキスト SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, static ] SInt16 MeasureText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画テキスト );
[ public, static ] SInt16 MeasureText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画テキスト SInt32 length // 文字数 SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
[ public, static ] SInt16 MeasureText( AEEFont font // フォントの種類 SFXWideStringConstRef string // 描画テキスト SInt16 limit // 最大幅 SInt16Ptr fit // 描画可能最大文字数 );
廃止予定 | |
---|---|
この関数は、SophiaFramework UNIVERSE 6.0 で廃止される予定です。 この関数の代わりに SFXGraphics::MeasureSingleText 関数を利用することを推奨します。 |
[ public ] SFCError RegisterFont( AEECLSID id // 現在設定されているフォントに対応付ける ClassID );
[ public, static ] SFCError RegisterFont( AEEFont font // AEEFont AEECLSID id // 対応付ける ClassID );
この関数は、ClassID をフォントに対応付けます。 引数としてフォントが指定されなかった場合は、現在設定されているフォントに指定された ClassID を対応付けます。
BREW では ClassID をフォントに対応付けた場合、 対応付け前のフォント(AEEFont)と ClassID を保存しておく必要があります。
この関数は、フォントについて元の ClassID 対応付けを保存します。 この対応付けは SFXGraphics::UnregisterFont 関数を呼び出せば復元されます。 また、アプリ終了時に呼び出される SFXGraphics クラスのデストラクタ実行時にも以前の対応付けが自動的に復元する仕様になっています。
ClassID "AEECLSID_KDDI_SMALL_FONT" を AEE_FONT_NORMAL に対応付けるコードは以下の通りです。
SFXGraphics::RegisterFont(AEE_FONT_NORMAL, AEECLSID_KDDI_SMALL_FONT);
// UnregisterFont 関数は (明示的に対応付けを解消する場合以外) 呼び出す必要はない
[ public ] Void ResetClip(Void);
この関数は、SFXGraphics::SetClip 関数で設定したクリッピング領域を解除します。
[ public ] Void ResetDestination(Void);
SFXGraphics::SetDestination(null) を呼び出すことと同じです。
SFXGraphics::SetDestination | SFXGraphics::GetDestination | SFBGraphics::ResetDestination | SFBDisplay::ResetDestination
[ public ] Void ResetTranslate(Void);
この関数は、ウィンドウの原点をデフォルトのワールド座標系の原点に戻します。
[ public ] Void SetAlgorithmHint( AEEAlgorithmHint param // アルゴリズムのヒント );
この関数は描画操作のアルゴリズムのヒントを設定します。
デフォルト値: ALGORITHM_FAST
注意 | |
---|---|
アルゴリズムのヒントは SFXGraphics::DrawPolygon 関数に対してのみ有効です。 |
SFXGraphics::GetAlgorithmHint | SFXGraphics::DrawPolygon | SFBGraphics::SetAlgorithmHint | BREW API IGRAPHICS_SetAlgorithmHint | BREW API AEEAlgorithmHint
[ public ] Void SetAnnunciators( UInt16 value // オン / オフを切り替えるアナンシエータ(通知機能)のセットを指定する // 以下のアナンシエータ(通知機能)のフラグを 1 つ以上を論理 OR で指定する // ANNUN_MMS MMS: アプリケーションで使用される // ANNUN_MSG: ボイスメール // ANNUN_NET_MSG: ネットメッセージ // ANNUN_ALARMCLOCK: アラームクロック // ANNUN_NET_LOCK: ロックされたデバイス // ANNUN_STOPWATCH: ストップウォッチ // ANNUN_COUNTDOWN: カウントダウンクロック // ANNUN_SILENCEALL: ベル音オフ UInt16 mask // value に指定したアナンシエータ(通知機能)のフラグごとに、 // このマスクの対応するビットでアナンシエータ(通知機能)のオン / オフを指定する );
指定されたアナンシエータ(通知機能)をオンまたはオフにします。 この関数のサポートと振る舞いは、デバイスに依存します。
指定可能なアナンシエータ(通知機能)は以下の通りです。
ANNUN_MSG 通知機能と ANUN_NET_MSG 通知機能をオンにして、 ANNUN_COUNTDOWN 通知機能をオフにするには、以下のように記述します。
SFXGraphicsPtr graphics; UInt16 wVal = 0; UInt16 wMask = 0; graphics = SFXGraphics::GetInstance(); wVal |= ANNUN_MSG | ANNUN_NET_MSG | ANNUN_COUNTDOWN; wMask |= ANNUN_MSG | ANNUN_NET_MSG; graphics->SetAnnunciators(po,wVal,wMask);
[ public ] Void SetBackColor( SFXRGBColorConstRef param // 設定する色 );
SFXGraphics クラスが内部で保持する、 SFBGraphics クラスの背景色と SFBDisplay クラスのアクティブ背景色を設定します。
注意 | |
---|---|
SFXGraphics::ClearRectangle 関数が呼ばれるまで背景の色は変わりません。 |
SFXGraphics::GetBackColor | SFXGraphics::ClearRectangle | SFXGraphics::SetForeColor | SFXRGBColor | SFBGraphics::SetBackground | SFBDisplay::SetColor | BREW API IGRAPHICS_SetBackground | BREW API IDISPLAY_SetColor
携帯電話のバックライトの点灯/消灯を切り替えます。
バックライトの動作は、機種に依存します。 この関数でバックライトを点灯させた場合、再度消灯するまでの時間は機種によって異なります。 同様に、この関数でバックライトを消灯させた場合、 再度点灯するまでの時間は機種によって異なります。
[ public ] Void SetClip( SFXRectangleConstRef param // クリッピング領域に設定する矩形 );
この関数は、SFXGraphics インスタンスのクリッピング領域を引数で指定した矩形と、 ターゲットビットマップ(非 GUIフレームワーク利用時)、 または実領域内の再描画領域(GUIフレームワーク利用時)との交差領域に設定します。 クリッピング領域に指定した矩形の外側で実行される描画は表示されません。
指定したクリッピング領域の幅や高さが負の数である場合は、0 の値に変更されて設定されます。
注意 | |
---|---|
矩形以外の図形領域によるクリッピングはサポートされません。 これは、SFBDisplay クラスが矩形によるクリッピングしかサポートしないことによります。 SFXGraphics クラスが内部に保持する SFBGraphics クラスの SFBGraphics::SetClip 関数を利用することで矩形以外の図形領域によるクリッピングも可能ですが、 この場合、内部で SFBDisplay クラスを利用して描画しているテキストはクリッピングの対象外となります。 |
SFBGraphics::SetClip | SFBDisplay::SetClipRect | BREW API IGRAPHICS_SetClip | BREW API IDISPLAY_SetClipRect | SFXGraphics::GetClip | SFXGraphics::ClearRectangle
[ public ] SFCError SetDestination( SFBBitmapSmpConstRef param // レンダリング対象となるターゲットビットマップ // デバイスビットマップに設定する場合は null );
SFXGraphics クラスが内部で保持する、 SFBDisplay クラスと SFBGraphics クラスのレンダリング対象となるターゲットビットマップを設定します。
失敗した場合、または引数に null を指定した場合は、 デバイスビットマップに設定されます。
デフォルト値: デバイスビットマップ
注意 | |
---|---|
デバイスビットマップ以外のビットマップをターゲットビットマップに指定する場合、 ターゲットビットマップに対して行った描画操作を画面に反映させるには、 SFXGraphics::BitBlt 関数を呼び出してターゲットビットマップの内容をデバイスビットマップに転送し、 "SFXGraphics::Update();"を呼び出して表示ハードウェア(画面)を更新します。 |
SFXGraphics::GetDestination | SFXGraphics::ResetDestination | SFXGraphics::BitBlt | SFXGraphics::Update | SFBDisplay | SFBGraphics | SFBBitmap | SFBGraphics::SetDestination | SFBDisplay::SetDestination | BREW API IGRAPHICS_SetDestination | BREW API IDISPLAY_SetDestination
[ public ] Void SetFillColor( SFXRGBColorConstRef param // 設定する塗り潰し色 );
この関数は、閉じた図形オブジェクトの塗り潰し色を設定します。
設定後に描画される閉じた図形オブジェクトは指定された色で塗り潰されます。
この関数は、閉じた図形オブジェクトの塗り潰しモードを設定します。
引数に "true" を指定すると、設定後に描画される閉じた図形オブジェクトの塗り潰しモードがオンになります。 "false" を指定すると、塗り潰しモードがオフになります。
デフォルト値: "false"
注意 | |
---|---|
引数に無効な値("true" と "false" 以外)が指定されると、 塗り潰しモードをデフォルトの "false" に設定します。 |
この関数は、フォントの種類、アセント、ディセント、高さ(=アセント+ディセント)を設定します。
注意 | |
---|---|
何も設定しない場合、フォントは AEE_FONT_NORMAL で初期化されます。 |
[ public ] Void SetForeColor( SFXRGBColorConstRef param // 設定する色 );
SFXGraphics クラスが内部で保持する、 SFBGraphics クラスの前景色と SFBDisplay クラスのアクティブテキスト色とアクティブ線色(フレームおよびその他の項目)を設定します。
注意 | |
---|---|
再びこの関数を呼び出して別の RGBA 値を設定するまで、 すべてのグラフィックオブジェクトやテキストはこの色で描画されます。 |
SFXGraphics::GetForeColor | SFXGraphics::SetBackColor | SFXRGBColor | SFBGraphics::SetColor | SFBDisplay::SetColor | BREW API IGRAPHICS_SetColor | BREW API IDISPLAY_SetColor
[ public ] AEEPaintMode SetPaintMode( AEEPaintMode param // 描画モードの enum 値 // 以下のいずれかを指定します。 // AEE_PAINT_COPY: コピーラスター操作 (デフォルト) // AEE_PAINT_XOR: XORラスター操作 );
更新後の描画モード
この関数は、描画モードを設定します。
描画モードを AEE_PAINT_COPY に設定すると、 ディスプレイバッファの古い内容が新しい内容で上書きされます。 描画モードを AEE_PAINT_XOR に設定すると、 新しい内容と古い内容の排他的論理和演算の結果がディスプレイバッファに書き込まれます。
デフォルト値: AEE_PAINT_COPY
注意 | |
---|---|
モードの入力パラメータとして無効な整数 (enum) 値を指定すると、 描画モードはデフォルトで AEE_PAINT_COPY に設定されます。 |
BREW API IGRAPHICS_SetPaintMode | SFBGraphics::SetPaintMode | AEEPaintMode | SFXGraphics::GetPaintMode
この関数は、点のサイズ(幅)を設定します。[単位: ピクセル]
デフォルト値: 1 ピクセル
[ public ] AEEStrokeStyle SetStrokeStyle( AEEStrokeStyle param // 描画に使用するストロークスタイルの enum 値 // 以下のいずれかを指定します。 // STROKE_SOLID: 線と輪郭は実線で描画される (デフォルト) // STROKE_DOTTED: 線と輪郭は点線で描画される );
以前のストロークスタイル
SFBGraphics クラスの描画関数が使用するストロークスタイルを設定します。
ストロークスタイルを STROKE_SOLID に設定すると、線と輪郭は実線で描画されます。 STROKE_DOTTED に設定すると、線と輪郭は点線で描画されます。
デフォルト値: STROKE_SOLID
SFBGraphics::SetStrokeStyle | BREW API IGRAPHICS_SetStrokeStyle | AEEStrokeStyle | SFBGraphics | SFXGraphics::GetStrokeStyle
[ public ] Void SetTranslate( SFXGridConstRef param // 移動量 );
ワールド座標系でウィンドウの原点を移動します。 つまり、ワールド座標系の異なる領域が表示されます。 単位はピクセル数です。
ウィンドウの原点は常に左上隅であり、ワールド座標系のデフォルト原点です。 移動の結果、ビューポートに表示されているすべての基本図形が逆の方向に同じ量だけ移動します。
"ビューポート"と"ウィンドウ"の定義は、 BREW API IGRAPHICS_SetViewport を参照してください。
注意 | |
---|---|
SFXGraphics クラスが内部に保持する SFBGraphics クラスと SFBDisplay クラスに関して原点が移動します。 この関数を利用することで図形だけでなくテキストについても描画の原点は移動します。 なお、レスポンダのローカル領域の始点への原点移動は、 SophiaFramework UNIVERSE 内部で自動的に行われます。 |
SFXGraphics::GetTranslate | SFBGraphics::Translate | BREW API IGRAPHICS_Translate | BREW API IGRAPHICS_SetViewport
[ public ] SFCError UnregisterFont(Void);
[ public, static ] SFCError UnregisterFont( AEEFont font // 現在の ClassID 対応付けを行うフォントの種類 );
非 static 版の SFXGraphics::UnregisterFont 関数は、 現在設定されているフォントについて現在の ClassID 対応付けを解消します。
注意事項 | |
---|---|
FEP (Front-End Processor) 起動時に中断イベントのハンドラ内でこの関数を呼び出すと、 端末リセットなど動作が不安定になる端末が存在します。 FEP (Front-End Processor) 起動時に、この関数を呼び出してはいけません。 |
AEE_FONT_NORMAL フォントについて現在の ClassID 対応付けの解消を行うコードは以下の通りです。
SFXGraphics::UnregisterFont(AEE_FONT_NORMAL);
[ public ] Void Update(Void);
この関数は、 ターゲットビットマップがデバイスビットマップである場合に表示ハードウェア(画面)を更新します。
一連の描画処理を行う場合は、すべての描画操作が完了した後に "SFXGraphics::Update();"を 1 回実行するだけで構いません。
注意 | |
---|---|
内部の実装では、 SFBGraphics::Update 関数と SFBDisplay::Update 関数を呼び出します。 |
注意 | |
---|---|
描画操作を行っても SFXGraphics::Update 関数を呼び出さなければ、 表示ハードウェア(画面)が更新されません。 |
SFY レスポンダシステムを使用するとき | |
---|---|
SFY レスポンダシステム使用時に イベントループ内で描画処理を行う場合は、 イベントループの最後に自動的に呼び出されるので、 明示的に "SFXGraphics::Update();" を実行する必要はありません。 |
Copyright(c) 2002 - 2024 Sophia Cradle Incorporated All Rights Reserved. |