#include <iostream>
#include <cstdlib>
#include "C:\libs\CxImage\ximage.h"
using namespace std;
int main( void )
{
int choice,r,g,b,gray,Height,Width;
Height= 300 ;
Width= 300 ;
CxImage image;
cout << "Enter 1-4 for Load File: 1.JPG 2.BMP 3.GIF 4.TIF:" ;
cin >> choice;
switch ( choice)
{
case 1 :
image.Load ( "test.jpg" , CXIMAGE_FORMAT_JPG) ;
break ;
case 2 :
image.Load ( "test.bmp" , CXIMAGE_FORMAT_BMP) ;
break ;
case 3 :
image.Load ( "test.gif" , CXIMAGE_FORMAT_GIF) ;
break ;
case 4 :
image.Load ( "test.tif" , CXIMAGE_FORMAT_TIF) ;
break ;
default :
cout << "can't open file!" ;
}
BYTE * imgary= image.GetBits ( ) ;
for ( int i= 0 ; i< Height; i++ )
for ( int j= 0 ; j< Width; j++ )
{
r= imgary[ ( Width* i+ j) * 3 + 2 ] ; //將R pixel值取出
g= imgary[ ( Width* i+ j) * 3 + 1 ] ; //將G pixel值取出
b= imgary[ ( Width* i+ j) * 3 ] ; //將B pixel值取出
gray= ( int ) ( r* 0.299 + g* 0.587 + b* 0.114 ) ; //計算出灰階值
imgary[ ( Width* i+ j) * 3 + 2 ] = gray; //存回原陣列
imgary[ ( Width* i+ j) * 3 + 1 ] = gray;
imgary[ ( Width* i+ j) * 3 ] = gray;
}
cout << "Enter 5-8 for Save File: 5.JPG 6.BMP 7.GIF 8.TIF:" ;
cin >> choice;
switch ( choice)
{
case 5 :
image.Save ( "test2.jpg" , CXIMAGE_FORMAT_JPG) ;
break ;
case 6 :
image.Save ( "test2.bmp" , CXIMAGE_FORMAT_BMP) ;
break ;
case 7 :
image.Save ( "test2.gif" , CXIMAGE_FORMAT_GIF) ;
break ;
case 8 :
image.Save ( "test2.tif" , CXIMAGE_FORMAT_TIF) ;
break ;
default :
cout << "can't Save File!" ;
}
return 0 ;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGxpYj4KI2luY2x1ZGUgIkM6XGxpYnNcQ3hJbWFnZVx4aW1hZ2UuaCIKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbih2b2lkKQp7CiAgICBpbnQgY2hvaWNlLHIsZyxiLGdyYXksSGVpZ2h0LFdpZHRoOwogICAgSGVpZ2h0PTMwMDsKICAgIFdpZHRoPTMwMDsKICAgIEN4SW1hZ2UgaW1hZ2U7CiAgICBjb3V0PDwiRW50ZXIgMS00IGZvciBMb2FkIEZpbGU6IDEuSlBHIDIuQk1QIDMuR0lGIDQuVElGOiI7CiAgICBjaW4+PmNob2ljZTsKICAgIAogICAgc3dpdGNoKGNob2ljZSkKICAgIHsKICAgICAgICBjYXNlIDE6CiAgICAgICAgaW1hZ2UuTG9hZCgidGVzdC5qcGciLCBDWElNQUdFX0ZPUk1BVF9KUEcpOwogICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDI6CiAgICAgICAgaW1hZ2UuTG9hZCgidGVzdC5ibXAiLCBDWElNQUdFX0ZPUk1BVF9CTVApOwogICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDM6CiAgICAgICAgaW1hZ2UuTG9hZCgidGVzdC5naWYiLCBDWElNQUdFX0ZPUk1BVF9HSUYpOwogICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDQ6CiAgICAgICAgaW1hZ2UuTG9hZCgidGVzdC50aWYiLCBDWElNQUdFX0ZPUk1BVF9USUYpOwogICAgICAgIGJyZWFrOwoKICAgICAgICBkZWZhdWx0OgogICAgICAgIGNvdXQ8PCJjYW4ndCBvcGVuIGZpbGUhIjsKICAgIH0KCiAgICBCWVRFICppbWdhcnk9aW1hZ2UuR2V0Qml0cygpOwogICAgZm9yKGludCBpPTA7aTxIZWlnaHQ7aSsrKQogICAgICAgIGZvcihpbnQgaj0wO2o8V2lkdGg7aisrKQogICAgICAgIHsKICAgICAgICAgICAgcj1pbWdhcnlbKFdpZHRoKmkraikqMysyXTsvL+Wwh1IgcGl4ZWzlgLzlj5blh7oKICAgICAgICAgICAgZz1pbWdhcnlbKFdpZHRoKmkraikqMysxXTsvL+Wwh0cgcGl4ZWzlgLzlj5blh7oKICAgICAgICAgICAgYj1pbWdhcnlbKFdpZHRoKmkraikqM107Ly/lsIdCIHBpeGVs5YC85Y+W5Ye6CiAgICAgICAgICAgIGdyYXk9KGludCkociowLjI5OStnKjAuNTg3K2IqMC4xMTQpOy8v6KiI566X5Ye654Gw6ZqO5YC8CiAgICAgICAgICAgIGltZ2FyeVsoV2lkdGgqaStqKSozKzJdPWdyYXk7Ly/lrZjlm57ljp/pmaPliJcKICAgICAgICAgICAgaW1nYXJ5WyhXaWR0aCppK2opKjMrMV09Z3JheTsKICAgICAgICAgICAgaW1nYXJ5WyhXaWR0aCppK2opKjNdPWdyYXk7CiAgICAgICAgfQogICAgICAgIAogICAgY291dDw8IkVudGVyIDUtOCBmb3IgU2F2ZSBGaWxlOiA1LkpQRyA2LkJNUCA3LkdJRiA4LlRJRjoiOwogICAgY2luPj5jaG9pY2U7CiAgICAKICAgIHN3aXRjaChjaG9pY2UpCiAgICB7CiAgICAgICAgY2FzZSA1OgogICAgICAgIGltYWdlLlNhdmUoInRlc3QyLmpwZyIsIENYSU1BR0VfRk9STUFUX0pQRyk7CiAgICAgICAgYnJlYWs7CgogICAgICAgIGNhc2UgNjoKICAgICAgICBpbWFnZS5TYXZlKCJ0ZXN0Mi5ibXAiLCBDWElNQUdFX0ZPUk1BVF9CTVApOwogICAgICAgIGJyZWFrOwoKICAgICAgICBjYXNlIDc6CiAgICAgICAgaW1hZ2UuU2F2ZSgidGVzdDIuZ2lmIiwgQ1hJTUFHRV9GT1JNQVRfR0lGKTsKICAgICAgICBicmVhazsKCiAgICAgICAgY2FzZSA4OgogICAgICAgIGltYWdlLlNhdmUoInRlc3QyLnRpZiIsIENYSU1BR0VfRk9STUFUX1RJRik7CiAgICAgICAgYnJlYWs7CgogICAgICAgIGRlZmF1bHQ6CiAgICAgICAgY291dDw8ImNhbid0IFNhdmUgRmlsZSEiOwogICAgfQogICAgCiAgICByZXR1cm4gMDsKfQo=
compilation info
prog.cpp:3:36: error: C:\libs\CxImage\ximage.h: No such file or directory
prog.cpp: In function ‘int main()’:
prog.cpp:12: error: ‘CxImage’ was not declared in this scope
prog.cpp:12: error: expected `;' before ‘image’
prog.cpp:19: error: ‘image’ was not declared in this scope
prog.cpp:19: error: ‘CXIMAGE_FORMAT_JPG’ was not declared in this scope
prog.cpp:23: error: ‘CXIMAGE_FORMAT_BMP’ was not declared in this scope
prog.cpp:27: error: ‘CXIMAGE_FORMAT_GIF’ was not declared in this scope
prog.cpp:31: error: ‘CXIMAGE_FORMAT_TIF’ was not declared in this scope
prog.cpp:38: error: ‘BYTE’ was not declared in this scope
prog.cpp:38: error: ‘imgary’ was not declared in this scope
prog.cpp:38: error: ‘image’ was not declared in this scope
prog.cpp:57: error: ‘CXIMAGE_FORMAT_JPG’ was not declared in this scope
prog.cpp:61: error: ‘CXIMAGE_FORMAT_BMP’ was not declared in this scope
prog.cpp:65: error: ‘CXIMAGE_FORMAT_GIF’ was not declared in this scope
prog.cpp:69: error: ‘CXIMAGE_FORMAT_TIF’ was not declared in this scope
stdout