修改BMP图片的颜色位数
答案:3 悬赏:30 手机版
解决时间 2021-03-02 07:02
- 提问者网友:愿为果
- 2021-03-01 23:16
我有一张图片,我怎么看他的位数,就是BIT,还有我想把他修改到比较小的位数,例如8位,用什么软件才能办到,谢谢大家了
最佳答案
- 五星知识达人网友:长青诗
- 2021-03-01 23:35
PS
全部回答
- 1楼网友:忘川信使
- 2021-03-02 02:20
bmp文件有1,4,16,24位等很多种表示一个像素的格式,按lz给的代码的意思是只处理24位,没有压缩的情况,这样的话for循环三次每次次读到的是一个像素的bgr值.
我理解的意思是你要读出图片中间的一个纯色的正方形的图形的颜色,其他区域是白色。这样的话把for循环那里改一下
unsigned char temp[3];
int i,j;
for( i = 0; i < xsize * ysize; i++ )
{
for( j = 0; j < 3; j++ )
{
temp[j] = *image;
image++;
}
if( temp[0] == 0 && temp[1] == 0 )
{
printf("red\n");
break;
}
else if( temp[0] == 0 && temp[2] == 0 )
{
printf("green\n");
break;
}
else if( temp[1] == 0 && temp[2] == 0 )
{
printf("blue\n");
break;
}
}
我顺手写的,没有测试,如果有问题,把要测试的图片发来我测试一下。
另外,图片的大小最好动态获取,否则容易出错。
- 2楼网友:逃夭
- 2021-03-02 01:15
PS或者直接右键点击,选打开方式,然后选window自带的画板。接着,另存为。这时弹出个窗口,一栏输入文件名,下面一栏可以选择格式之类的。8位色也就是256色。照着做就行了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯