gpt4 book ai didi

c++ - 如何在 OpenCV 的 cvShowImage() 函数调用的窗口中显示中文文本?

转载 作者:行者123 更新时间:2023-11-28 03:25:46 27 4
gpt4 key购买 nike

我想在窗口标题中添加中文文本,这是由 OpenCV 的 cvShowImage() 函数调用的。但它没有给出正确的结果。

#include <iostream>
#include "opencv2/opencv.hpp"

using namespace cv;
using namespace std;

int main(int argc, const char * argv[])
{
const char *pstrFilename = "EDF001.png";
const char *pstrWindowTitle = "欢迎来到细胞图像处理的世界!";

IplImage* img = cvLoadImage(pstrFilename, CV_LOAD_IMAGE_UNCHANGED);

cvNamedWindow(pstrWindowTitle, CV_WINDOW_NORMAL);
cvShowImage(pstrWindowTitle, img);

cvWaitKey();

cvDestroyWindow(pstrWindowTitle);
cvReleaseImage(&img);

return 0;
}

结果窗口: Incorrect Chinese text display on the Window title

最佳答案

我原来的评论是:

“如果您使用英文/ASCII 名称作为标题,它工作正常吗?OpenCV 可能无法处理窗口标题的非 ASCII 字符。”

但另一种可能的解决方案是在 Objective C 和 Cocoa 框架中使用蛮力方法,例如:

NSWindow * openCVWindow = [[NSApplication sharedApplication] mainWindow];
if(openCVWindow)
{
[openCVWindow setTitle: @"欢迎来到细胞图像处理的世界!"];
} else {
NSLog( @"openCV's window isn't considered a main window!");
}

关于c++ - 如何在 OpenCV 的 cvShowImage() 函数调用的窗口中显示中文文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14048787/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com