void CTeach_testView::On8bitSave() {
CTeach_testDoc *pDoc=GetDocument(); FILE *fp;
fp=fopen(\
fwrite(&pDoc->BitMapFileHeader,1,14,fp);
fwrite(&pDoc->pBitMapInfo->bmiHeader,1,40,fp); fwrite(&pDoc->pBitMapInfo->bmiColors,4,256,fp);
fwrite(pDoc->pImage,pDoc->BmpHeight,pDoc->nWidth,fp); fclose(fp); }
void CTeach_testView::On24bitSave() {
CTeach_testDoc *pDoc=GetDocument(); FILE *fp;
fp=fopen(\
fwrite(&pDoc->BitMapFileHeader,1,14,fp);
fwrite(&pDoc->pBitMapInfo->bmiHeader,1,40,fp);
fwrite(pDoc->pImage,pDoc->BmpHeight,pDoc->nWidth,fp); fclose(fp); }
void CTeach_testView::On8bitPartsave() {
CTeach_testDoc *pDoc=GetDocument(); BITMAPFILEHEADER BMpFHeader; BITMAPINFOHEADER pBMapInfo; int i; FILE *fp;
fp=fopen(\
BMpFHeader=pDoc->BitMapFileHeader; BMpFHeader.bfSize=200*200+14+40+1024; pBMapInfo=pDoc->pBitMapInfo->bmiHeader; pBMapInfo.biWidth=200; pBMapInfo.biHeight=200; fwrite(&BMpFHeader,1,14,fp); fwrite(&pBMapInfo,1,40,fp);
fwrite(&pDoc->pBitMapInfo->bmiColors,4,256,fp); for(i=0;i<=200;i++) { fwrite(&pDoc->pImage[(200+i)*pDoc->nWidth+200],1,200,fp); }
fclose(fp);
}
void CTeach_testView::On24bitPartsave() {
FILE *fp; int i;
CTeach_testDoc *pDoc=GetDocument(); fp=fopen(\
pDoc->BitMapFileHeader.bfSize=100*100+14+40; fwrite(&pDoc->BitMapFileHeader,1,14,fp); pDoc->pBitMapInfo->bmiHeader.biWidth=100; pDoc->pBitMapInfo->bmiHeader.biHeight=100; fwrite(&pDoc->pBitMapInfo->bmiHeader,1,40,fp); for(i=0;i<100;i++) { fwrite(&pDoc->pImage[(100+i)*pDoc->nWidth+300],1,300,fp); }
fclose(fp); }
void CTeach_testView::On8bitZfttxt() {
CTeach_testDoc *pDoc=GetDocument(); FILE *fp; int i,j;
long nHist[256]; char s[17]={0};
fp=fopen(\for(i=0;i<256;i++) { nHist[i]=0; }
for(i=0;i
for(i=0;i<256;i++) { sprintf(s,\ \ fwrite(s,1,16,fp); if(i%4==3)
{ sprintf(s,\ fwrite(s,1,1,fp); } }
fclose(fp); }
void CTeach_testView::On24bitZfttxt() {
CTeach_testDoc *pDoc=GetDocument(); FILE *fp; int i,j;
long nHist[768]; char s[17]={0};
fp=fopen(\for(i=0;i<768;i++) { nHist[i]=0; }
for(i=0;i
sprintf(s,\fwrite(s,1,4,fp); for(i=0;i<256;i++) { sprintf(s,\ \ fwrite(s,1,16,fp); if(i%4==3) { sprintf(s,\ fwrite(s,1,1,fp); } }
sprintf(s,\fwrite(s,1,4,fp); for(i=256;i<512;i++)
{ sprintf(s,\ \ fwrite(s,1,16,fp); if(i%4==3) { sprintf(s,\ fwrite(s,1,1,fp); } }
sprintf(s,\fwrite(s,1,4,fp); for(i=512;i<768;i++) { sprintf(s,\ \ fwrite(s,1,16,fp); if(i%4==3) { sprintf(s,\ fwrite(s,1,1,fp); } }
fclose(fp); }
void CTeach_testView::On8bitChange() {
CTeach_testDoc *pDoc=GetDocument(); int i,j;
for(i=0;i<10;i++) {
for(j=pDoc->BmpWidth/3;j
pDoc->pImage[(pDoc->BmpHeight/2+i)*pDoc->nWidth+j]=0; } }
for(i=0;i
Invalidate(TRUE); }
void CTeach_testView::On24bitZft()
{
CTeach_testDoc* pDoc = GetDocument(); CClientDC dc(this); int i,j,nWidth; int t=320; long nHist[768]; CRect rect; GetClientRect( &rect ); dc.FillSolidRect( rect, RGB(255,255,255) ); for ( i=0;i<256*3;i++) { nHist[i]=0; } for (i=0;i
for(i=0;i<=255;i++) { CPen pen(PS_SOLID,1,RGB(0,0,255)); CPen*oldpen =dc.SelectObject(&pen); dc.MoveTo(40+i,320); dc.LineTo(40+i,320-nHist[i]/20); dc.SelectObject(oldpen); } for(i=0+256;i<=255+256;i++) { CPen pen(PS_SOLID,1,RGB(0,255,0)); CPen*oldpen =dc.SelectObject(&pen); dc.MoveTo(40+i,320); dc.LineTo(40+i,320-nHist[i]/20); dc.SelectObject(oldpen); } for(i=0+256*2;i<=255+256*2;i++) { CPen pen(PS_SOLID,1,RGB(255,0,0)); CPen*oldpen =dc.SelectObject(&pen); dc.MoveTo(40+i,320); dc.LineTo(40+i,320-nHist[i]/20); dc.SelectObject(oldpen); }