SDカード内に出来上がったファイルはカードアダプタを介してPCのエクスプローラで読取り
できるのですが、お絵かきツールで画像データとして開こうとすると「ファイルが壊れている」
とかいわれて開くことができません。
できるのですが、お絵かきツールで画像データとして開こうとすると「ファイルが壊れている」
とかいわれて開くことができません。
/* ビットマップヘッダ 14byte */ typedef struct tagBITMAPFILEHEADER { unsigned short bfType; unsigned long bfSize; unsigned short bfReserved1; unsigned short bfReserved2; unsigned long bfOffBits; } BITMAPFILEHEADER; /* 情報ヘッダ 40byte */ typedef struct tagBITMAPINFOHEADER{ unsigned long biSize; long biWidth; long biHeight; unsigned short biPlanes; unsigned short biBitCount; unsigned long biCompression; unsigned long biSizeImage; long biXPixPerMeter; long biYPixPerMeter; unsigned long biClrUsed; unsigned long biClrImporant; } BITMAPINFOHEADER;
bhead.bitmapfileheader.bfType= endianS('B'|('M'<<8)); bhead.bitmapfileheader.bfSize= endianL(sizeof(BITMAPFILEHEADER)+imgsize); bhead.bitmapfileheader.bfReserved1= endianS(0x00); bhead.bitmapfileheader.bfReserved2= endianS(0x00); bhead.bitmapfileheader.bfOffBits= endianL(hdrsize+pltsize); bhead.bitmapinfoheadr.biSize= endianL(sizeof(BITMAPINFOHEADER)); bhead.bitmapinfoheadr.biWidth= endianL(XSIZE); bhead.bitmapinfoheadr.biHeight= endianL(YSIZE); bhead.bitmapinfoheadr.biPlanes= endianS(1); bhead.bitmapinfoheadr.biBitCount= endianS(8); bhead.bitmapinfoheadr.biCompression= endianL(0); bhead.bitmapinfoheadr.biSizeImage= endianL(imgsize); bhead.bitmapinfoheadr.biXPixPerMeter= endianL(0xb88); bhead.bitmapinfoheadr.biYPixPerMeter= endianL(0xb88); bhead.bitmapinfoheadr.biClrUsed= endianL(0); bhead.bitmapinfoheadr.biClrImporant= endianL(0);
(原寸大)
小さっ! しかも真っ黒だし