[Halcon学习笔记]在Qt上实现Halcon窗口的字体设置颜色设置等功能

1、 Halcon字体大小设置在Qt上的实现

在之前介绍过Halcon窗口显示文字字体的尺寸和样式,具体详细介绍可回看
(一)Halcon窗口界面上显示文字的字体尺寸、样式修改

当时介绍的设定方法

        //Win下
        QString Font_win = "-Arial-10-*-1-*-*-1-";
       //这里也可以Font_win = "-Arial-10";
        QByteArray ba = Font_win.toLocal8Bit();
        const char *string = ba.data();
        SetFont(hv_WindowHandleCurrent,string);
        //Linux下
         HTuple hv_Font,hv_FontWithSize;
        QueryFont(hv_WindowHandleCurrent,&hv_Font);
        hv_FontWithSize = HTuple(hv_Font[0]) + "-40";
        SetFont(hv_WindowHandleCurrent,hv_FontWithSize);

最近在使用过程中发现一个问题,在不同模式下设置的不同;

在Debug下
Font_win = "-Arial-10";
//在Release下
Font_win = "-Arial-10-";

如果要设置斜体,加粗等效果,Release下要严格按照SetFont的先后次序进行设定,不能缺省,不然会出现报错的情况。

2、Halcon颜色设置在Qt上的实现

Halcon有多种颜色选择,其算子介绍上也有具体展示,

上面表格每一种颜色都对应了不同的透明度,所以在Halcon中可以使用其16进制的代码来指代颜色

//Halcon下,红色半透明
dev_set_color('#ff000080')
//Qt下Debug模式,蓝色半透明
SetColor(hv_Window,"#0000ff80");

但是在Qt的Release下不能使用十六进制来代替颜色设定,只能设定具体的颜色,

color 颜色 color 颜色 color 颜色 color 颜色 color 颜色
black 黑色 white 白色 red 红色 green 绿色 blue 蓝色
dim gray 暗灰色 gray 灰色 light gray 浅灰 cyan 青色 magenta 品红
yellow 黄色 medium slate blue 中石板蓝 coral 珊瑚 slate blue 石板蓝 spring green 春绿
orange red 橙红色 dark olive green 深橄榄绿 pink 粉色 cadet blue 学员蓝色 goldenrod 金黄
orange 橘色 gold 金色 forest green 森林绿 cornflower blue 矢车菊蓝色 navy 海军蓝
turquoise 绿松石 dark slate blue 深石板蓝 light blue 浅蓝 indian red 印度红 violet red 紫红色
light steel blue 轻钢蓝色 medium blue 中蓝色 khaki 卡其色 violet 紫色 firebrick 耐火砖
midnight blue 午夜蓝 sea green 海绿色 dark turquoise 深绿松石 orchid 兰花 sienna 赭色
medium orchid 中等兰花 medium forest green 中等森林绿 medium turquoise 中等绿松石 medium violet red 中紫红色 salmon 三文鱼
blue violet 紫罗兰色 tan 棕褐色 pale green 淡绿色 sky blue 天蓝色 medium goldenrod 中等金黄
plum 李子 thistle 蓟色 dark orchid 深色兰花 maroon 栗色 dark green 深绿色
steel blue 钢蓝色 medium spring green 中春绿 medium sea green 中海绿 yellow green 黄绿色 edium aquamarine 中等海蓝宝石
lime green 石灰绿 aquamarine 蓝晶色 wheat 小麦色 green yellow 绿黄色
相关推荐
国中之林4 小时前
【qt】如何获取本机的IP地址?
服务器·qt·网络协议·学习·tcp/ip
誰能久伴不乏6 小时前
Qt 绘图详解
开发语言·c++·qt
Logintern096 小时前
PyQt5中如何实现指示灯点亮和指示灯熄灭功能
开发语言·python·qt
paidaxing_s8 小时前
【QT中堆栈布局的实现】
开发语言·qt·命令模式
科学的发展-只不过是读大自然写的代码9 小时前
qt 开发笔记堆栈布局的应用
笔记·qt·堆栈布局
春蕾夏荷_72829772510 小时前
vs+qt5.0 使用poppler-qt5 操作库获取pdf所有文本输出到txt操作
qt·pdf·poppler-qt5·poppler
从后端到QT10 小时前
Qt 网络编程 网络信息获取操作
开发语言·网络·qt
Hey小孩11 小时前
09.QT控件:按钮类控件
qt
大卫的纯爱战士12 小时前
文件读写操作之c语言、c++、windows、MFC、Qt
c语言·c++·windows·qt·mfc
yogurt=b12 小时前
【Qt】对话框
开发语言·c++·qt