撒狼黑 2014-12-26 06:40 采纳率: 0%
浏览 3141

C语言怎么取出一张256色位的bmp图像的某个像素的颜色

我想实现的是:将一张256色位图的bmp图像(1.bmp)上下左右移动N个像素(比如向右移5个像素,最左边的5个像素全涂成黑色)生成另一张图像(2.bmp)。我现在写的有些问题:
代码:
#include
#include

int main()
{
BITMAPFILEHEADER fileHeader;
BITMAPINFOHEADER infoHeader;
FILE *pfin = fopen("F:\1.bmp","rb");
FILE *pfout = fopen("F:\2.bmp","wb");
fread(&fileHeader,sizeof(BITMAPFILEHEADER),1,pfin);
fread(&infoHeader,sizeof(BITMAPINFOHEADER),1,pfin);
int size = 512*512;
int i;
unsigned char img[512][512];
fread(img,sizeof(byte),size,pfin);
if(infoHeader.biBitCount == 8)
{
for(i=1;i<512;i++)
{
img[i][50]=0;

}
}

fwrite(&fileHeader,sizeof(fileHeader),1,pfout);
fwrite(&infoHeader,sizeof(infoHeader),1,pfout);
fwrite(img,sizeof(byte),size,pfout);
}

  • 写回答

2条回答 默认 最新

  • 91program 博客专家认证 2014-12-26 07:06
    关注

    BMP 图解的数据还是比较简单的,要求的:
    (1)图像数据是从下往上的,最后一行数据在最开始
    (2)每一行数据 4 字节对齐,如果数据不足需要补零的
    注意到这两点,平移图像应该不难。

    评论

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘