(2019年11月11日)
■使用ソフト
・Visual Studio Community 2019
■言語
・C/C++
■Windows SDK バージョン
・10.0.17763.0
※Windows SDK バージョンの変更方法
■手順
1.https://github.com/nothings/stb/blob/master/stb_image_write.hに
アクセスし、「Raw」を右クリックし、「名前を付けてリンク先を保存」を選択
2.コンソールアプリを作成する。
新しいプロジェクトの作成→コンソールアプリ→プロジェクト名と場所を指定して作成
3.プロジェクトフォルダ内にダウンロードした「stb_image_write.h」を入れる。
4.「ヘッダーファイル」→「追加」→「既存の項目」の順に選択
5.「stb_image_write.h」を選択し「追加」する。
6.C++ファイル(.cpp)を以下のとおり変更する。
#define STB_IMAGE_WRITE_IMPLEMENTATION
#include "stb_image_write.h"
#include <vector>
int main()
{
//初期設定
int iPixelWidth = 300;//PNGファイルの幅(ピクセル単位)
int iPixelHeight = 300;//PNGファイルの高さ(ピクセル単位)
std::vector<unsigned char> vecData(iPixelWidth * iPixelHeight * 4);
//イメージデータ格納
for (int j = 0; j < iPixelHeight; j++)
{
for (int i = 0; i < iPixelWidth; i++)
{
int iP = (j * iPixelWidth + i) * 4;
vecData[iP] = 0;//R
vecData[iP + 1] = 150;//G
vecData[iP + 2] = 0;//B
vecData[iP + 3] = 255;//A
}
}
stbi_write_png("image.png", iPixelWidth, iPixelHeight, 4, &vecData.front(), 0);
return 0;
}
#include "stb_image_write.h"
#include <vector>
int main()
{
//初期設定
int iPixelWidth = 300;//PNGファイルの幅(ピクセル単位)
int iPixelHeight = 300;//PNGファイルの高さ(ピクセル単位)
std::vector<unsigned char> vecData(iPixelWidth * iPixelHeight * 4);
//イメージデータ格納
for (int j = 0; j < iPixelHeight; j++)
{
for (int i = 0; i < iPixelWidth; i++)
{
int iP = (j * iPixelWidth + i) * 4;
vecData[iP] = 0;//R
vecData[iP + 1] = 150;//G
vecData[iP + 2] = 0;//B
vecData[iP + 3] = 255;//A
}
}
stbi_write_png("image.png", iPixelWidth, iPixelHeight, 4, &vecData.front(), 0);
return 0;
}
7.実行結果
PNGファイルが作成される(image.png)
4.参考文献
C++で超簡単に画像出力+サンプル
CG系ライブラリ特集
0 件のコメント:
コメントを投稿