![ResourceCreate](https://celebpanda.com/wp/wp-content/uploads/2021/05/ResourceCreate.jpg)
データセットに基づいて画像リソースを作成します。
関数のバリアントは2つあります。
ResourceCreate
関数書式(ファイルに基づいたリソース作成)
bool ResourceCreate(
const string resource_name, // リソース名
const string path // ファイルへの相対パス
);
関数書式(ピクセル配列に基づいたリソース作成)
int ArrayInitialize(
short array[], // 初期化する配列
short value // 設定する初期値
);
関数書式(int型)
bool ResourceCreate(
const string resource_name, // リソース名
const uint& data[], // データセット配列
uint img_width, // 画像リソースの幅
uint img_height, // 画像リソースの高さ
uint data_xoffset, // 画像左上隅の水平オフセット(右方向へのオフセット)
uint data_yoffset, // 画像左上隅の垂直オフセット(下方向へのオフセット)
uint data_width, // データセットに基づいた画像の全幅
ENUM_COLOR_FORMAT color_format // 色処理メソッド
);
- 引数
引数名 | 初期値 | I/O | 詳細 |
resource_name | - | IN | リソース名 |
path | - | IN | リソースデータを含むファイルへの相対パス。 パスが"\"(文字列定数では"\\")で始まっている場合、"ターミナルデータフォルダ\MQL4\"からの相対パス。 それ以外の場合は、.ex4プログラムフォルダからの相対パス。 |
data[] | - | IN | 画像を作成する為の1次元配列または2次元配列。 |
img_width | - | IN | 画像領域の幅(ピクセル単位)。 data_widthより大きな値は設定出来ません。 |
img_height | - | IN | 画像領域の高さ(ピクセル単位)。 |
data_xoffset | - | IN | 画像左上隅の水平オフセット(右方向へのオフセット) |
data_yoffset | - | IN | 画像左上隅の垂直オフセット(下方向へのオフセット) |
data_width | - | IN | データセット配列が1次元配列の時のみ(data[])必要。 これはデータセットからの画像の全幅を表します。 data_widthに0が渡された場合、それはimg_widthと等しいと仮定されます。 2次元配列の場合、引数の値は無視されデータセット配列(data[][])に等しいと仮定されます。 |
color_format | - | IN | 色処理のメソッド。 ENUM_COLOR_FORMAT列挙の値で設定します。 |
- 戻り値
成功した場合はtrue、失敗した場合はfalseを返します。
エラーについての情報取得するには、GetLastError()関数を呼びます。
失敗時のエラーは。以下内容のエラーが発生する可能性があります。
エラーコード | 詳細 |
---|---|
4015 (ERR_RESOURCE_NAME_DUPLICATED) | 動的または静的リソースと同一の名前 |
4016 (ERR_RESOURCE_NOT_FOUND) | リソースが見つからない |
4017 (ERR_RESOURCE_UNSUPPORTED_TYPE) | このタイプのリソースはサポートされていません |
4018 (ERR_RESOURCE_NAME_IS_TOO_LONG) | リソース名が長すぎます |
- その他
2つ目のバリアントの関数を呼び出して同じ名前のリソースを作成した場合、
新しいリソースは作成せず既存のリソースを更新します。
1つ目のバリアントの関数は、ファイルから画像やサウンドデータをアップロードする為に使用され、
2つ目のバリアントの関数は、動的に画像を作成する為に使用されます。
画像は24bit/32bit色深度を持つ.bmp形式でなければなりません。
サウンドデータは.wav形式のみ使用できます。
リソースサイズは16MBを超えてはなりません。
ENUM_COLOR_FORMAT
ID | 詳細 |
---|---|
COLOR_FORMAT_XRGB_NOALPHA | アルファチャンネルは無視されます |
COLOR_FORMAT_ARGB_RAW | 色成分はターミナルで処理しない (ユーザーによって正確に設定しなければならない) |
COLOR_FORMAT_ARGB_NORMALIZE | 色成分はターミナルによって処理される |