添加文字水印和图像水印

#include <opencv2/opencv.hpp>

#include <string>

int main() {

// 读取 BMP 图像

cv::Mat image = cv::imread("input.bmp");

if (image.empty()) {

std::cout << "无法打开图像文件!" << std::endl;

return -1;

}

// 设置水印文字

std::string text = "Watermark";

int fontFace = cv::FONT_HERSHEY_SIMPLEX;

double fontScale = 1;

int thickness = 2;

cv::Scalar color(255, 255, 255); // 白色水印

// 定位水印的位置

int baseline;

cv::Size textSize = cv::getTextSize(text, fontFace, fontScale, thickness, &baseline);

cv::Point textOrg((image.cols - textSize.width) / 2, (image.rows + textSize.height) / 2);

// 在图像上添加文字水印

cv::putText(image, text, textOrg, fontFace, fontScale, color, thickness);

// 保存带水印的 BMP 图像

cv::imwrite("output_with_text_watermark.bmp", image);

return 0;

}

相关推荐
feng_you_ying_li1 小时前
c++之哈希表的介绍与实现
开发语言·c++·散列表
xh didida1 小时前
C++ -- string
开发语言·c++·stl·sring
m晴朗2 小时前
测试覆盖率从35%到80%:我用AI批量生成C++单元测试的完整方案
c++·gpt·ai
无限进步_2 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
苏纪云2 小时前
蓝桥杯考前突击
c++·算法·蓝桥杯
‎ദ്ദിᵔ.˛.ᵔ₎2 小时前
模板template
开发语言·c++
charlie1145141912 小时前
通用GUI编程技术——图形渲染实战(二十九)——Direct2D架构与资源体系:GPU加速2D渲染入门
开发语言·c++·学习·架构·图形渲染·win32
小肝一下2 小时前
每日两道力扣,day8
c++·算法·leetcode·哈希算法·hot100
CheerWWW3 小时前
C++学习笔记——线程、计时器、多维数组、排序
c++·笔记·学习
无限进步_3 小时前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio