调用freetype在opencv图片上绘制文字例程
时间: 2023-06-04 20:02:13 浏览: 238
我可以帮您解决这个问题。您可以参考以下代码示例:
```
#include <ft2build.h>
#include FT_FREETYPE_H
#include <opencv2/core.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/highgui.hpp>
using namespace cv;
int main()
{
Mat img = Mat::zeros(Size(800, 600), CV_8UC3);
FT_Library ft;
if (FT_Init_FreeType(&ft))
{
std::cerr << "Error initializing FreeType library" << std::endl;
return -1;
}
FT_Face face;
if (FT_New_Face(ft, "arial.ttf", 0, &face)) // "arial.ttf"为您所用字体文件的路径
{
std::cerr << "Error loading font" << std::endl;
return -1;
}
FT_Set_Pixel_Sizes(face, 0, 48);
putText(img, "Hello, world!", Point(50, 50), FONT_HERSHEY_SIMPLEX, 1, Scalar(255, 255, 255), 2, LINE_8);
FT_Done_Face(face);
FT_Done_FreeType(ft);
imshow("Image", img);
waitKey(0);
return 0;
}
```
这段代码使用FreeType库在OpenCV图片上绘制“Hello, world!”文字,并将结果显示出来。请确保要在程序所在目录下有相应的字体文件。
阅读全文