c语言给bmp图片加水印
时间: 2023-08-04 09:07:16 浏览: 58
C++ bmp图像添加水印
5星 · 资源好评率100%
您可以使用C语言中的OpenCV库来给bmp图片加水印。这里提供一个简单的示例代码:
```c
#include <stdio.h>
#include <opencv/cv.h>
#include <opencv/highgui.h>
int main(int argc, char** argv)
{
IplImage* src_img = cvLoadImage("input.bmp", 1);
IplImage* dst_img = cvCloneImage(src_img);
CvFont font;
cvInitFont(&font, CV_FONT_HERSHEY_SIMPLEX, 1.0, 1.0, 0, 2, CV_AA);
char* text = "Watermark";
CvPoint pt = cvPoint(50, 50);
CvScalar color = CV_RGB(255, 255, 255);
cvPutText(dst_img, text, pt, &font, color);
cvSaveImage("output.bmp", dst_img, 0);
cvReleaseImage(&src_img);
cvReleaseImage(&dst_img);
return 0;
}
```
该代码使用OpenCV库中的cvLoadImage函数读取输入bmp图片,然后使用cvCloneImage函数创建一个与输入图片尺寸相同的空白图片作为输出,接着使用cvInitFont函数初始化字体格式,使用cvPutText函数在输出图片上添加水印,最后使用cvSaveImage函数将输出图片保存为bmp格式。需要注意的是,这里的水印只是简单的文字,如果需要更复杂的水印,可以尝试使用OpenCV库中的其他函数实现。
阅读全文