Java HersheyFonts从OpenCV 4.2.0核心类文件中消失
当我研究一些开发人员发布的OpenCV代码以获取示例时 我发现一个错误无法解析符号“FONT\u HERSHEY\u SIMPLEX” 虽然我尝试了几次来解决它,但错误仍然没有得到解决 在谷歌搜索了一段时间后, 我发现OpenCV 4.2.0中的核心类没有静态int组:FONT\u HERSHEY\u 在OpenCV 3.4.0的核心类出现之前,HersheyFonts一直在帮助配置字体 但是我安装的OpenCV 4.2.0不再有那个变量了 嗯。。。为什么在4.2.0版本的Core Class中删除了Java HersheyFonts从OpenCV 4.2.0核心类文件中消失,java,android-studio,opencv,Java,Android Studio,Opencv,当我研究一些开发人员发布的OpenCV代码以获取示例时 我发现一个错误无法解析符号“FONT\u HERSHEY\u SIMPLEX” 虽然我尝试了几次来解决它,但错误仍然没有得到解决 在谷歌搜索了一段时间后, 我发现OpenCV 4.2.0中的核心类没有静态int组:FONT\u HERSHEY\u 在OpenCV 3.4.0的核心类出现之前,HersheyFonts一直在帮助配置字体 但是我安装的OpenCV 4.2.0不再有那个变量了 嗯。。。为什么在4.2.0版本的Core Class中
HersheyFont
变量?我应该如何使用它来替换它?
代码::第二行“Core.FONT\u HERSHEY\u SIMPLEX”导致错误
字体很抱歉我一直在修改它ㅠㅠ..
private void setLabel(Mat im, String label, MatOfPoint contour) {
int fontface = Core.FONT_HERSHEY_SIMPLEX;
double scale = 3;//0.4;
int thickness = 3;//1;
int[] baseline = new int[1];
Size text = Imgproc.getTextSize(label, fontface, scale, thickness, baseline);
Rect r = Imgproc.boundingRect(contour);
Point pt = new Point(r.x + ((r.width - text.width) / 2),r.y + ((r.height + text.height) / 2));
Imgproc.putText(im, label, pt, fontface, scale, new Scalar(255, 0, 0), thickness);
}
谢谢你们每次都给出了很好的答案,我希望你们今天过得愉快。它没有被删除。它的模块改变了HersheyFonts可在上使用。对于Java,您应该与新的OpenCV版本4.0+一起使用 所需进口
import org.opencv.imgproc.Imgproc;
现在是你的常数
Imgproc.FONT_HERSHEY_SIMPLEX
它被重构并转移到另一个类Imgproc中。因此,您的新代码将
private void setLabel(Mat im, String label, MatOfPoint contour) {
int fontface = Imgproc.FONT_HERSHEY_SIMPLEX;
哇!非常感谢。现在我可以用另一种方式使用HersheyFonts。正如所料,发展的世界是伟大的!谢谢你善意的回答!祝你今天愉快!>爪哇中的C++,我可以导入FunthHelsy!!!非常感谢您找到解决问题的方法