有没有人可以替代OpenCV
putText(支持 UTF-8 字符)?如前所述,putText
仅适用于 ASCII 字符,但不适UTF-8
用于šŠčČžŽ
?
问问题
10582 次
2 回答
4
如果 OpenCV 是使用 Qt 支持构建的,您可以使用它cv::addText()
来编写该字符串:
cv::Mat img = cv::imread("C:\\snowflake.jpg");
if (img.empty())
{
std::cout << "!!! Failed imread()" << std::endl;
return;
}
cv::addText(img, "áéőúöüóí", cv::Point(100, 50), cv::fontQt("Times"));
但是,如果 OpenCV 是在没有 Qt 支持的情况下构建的,调用cv::addText()
将使您的应用程序崩溃,并且控制台将打印以下错误:
OpenCV Error: The function/feature is not implemented (The library is compiled without QT support) in cv::fontQt, file C:\builds\2_4_PackSlave-win32-vc12-shared\opencv\modules\highgui\src\window.cpp, line 409
于 2014-05-03T02:31:16.233 回答
3
您没有指定您使用的是什么语言。在 Python 中,我会使用 PIL 的文本绘图功能:
draw.text((0, 0), unicode("áéőúöüóí","utf-8"), font=font, fill=(255,255,255))
于 2013-03-20T10:05:30.467 回答