//! @brief PGM(1byte,グレースケール,テキスト)を書き込む //! @param [in] fname ファイル名 //! @param [in] width 画像の幅 //! @param [in] height 画像の高さ //! @param [in] p 画像のメモリへのアドレス //! @param [in] vmax 最も明るい画素の値。普通の画像なら255 //! @details Grayscaleのメモリを渡すと、テキストでファイル名fnameで書き込む void pgmP2_write( const char* const fname, const int width, const int height, const unsigned char* const p, const int vmax ) { FILE* fp = fopen(fname, "wb"); fprintf(fp, "P2\n%d %d\n%d\n", width, height, vmax); size_t k = 0; for (size_t i = 0; i < (size_t)height; i++) { for (size_t j = 0; j < (size_t)width; j++) { fprintf(fp, "%d ",p[k]); k++; } fprintf(fp, "\n"); } fclose(fp); }