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

news/2024/10/25 12:29:35/

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有多种颜色选择,其算子介绍上也有具体展示,
颜色.PNG
上面表格每一种颜色都对应了不同的透明度,所以在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绿黄色

http://www.ppmy.cn/news/1389223.html

相关文章

VR历史建筑漫游介绍|虚拟现实体验店|VR设备购买

VR历史建筑漫游是一种利用虚拟现实技术,让用户可以身临其境地参观和探索历史建筑的体验。通过VR头显和相关设备,用户可以在虚拟环境中自由移动和互动,感受历史建筑的真实氛围和文化内涵。 在VR历史建筑漫游中,您可以选择不同的历史…

【网络】负载均衡

OSI模型每一层的负载均衡 在OSI模型中,每一层的负载均衡具体如下: 1. 第二层(数据链路层):数据链路层的负载均衡通常涉及对MAC地址的操作。在这一层,可以使用虚拟MAC地址技术,外部设备对虚拟MA…

Java学习笔记21——使用JDBC访问MySQL数据库

JDBC(Java Database Connectivity,Java数据库连接)是应用程序编程借口(API),描述了一套访问关系数据库的标准Java类库。可以在程序中使用这些API,连接到关系数据库,执行SQL语句&…

Visio 2003简体中文版软件安装教程(附软件下载地址)

软件简介: 软件【下载地址】获取方式见文末。注:推荐使用,更贴合此安装方法! Visio 2003简体中文版是一款独立的专业绘图软件,适用于复制、可视化处理、分析和交流信息、系统和流程。不论是哪个版本的Visio&#xff…

【WPF应用3】深入解析WPF(Windows Presentation Foundation)界面处理方式和XAML语法

摘要 本文详细介绍了WPF(Windows Presentation Foundation)界面处理方式和XAML(XML for Windows)语法。我们将分别探讨WPF的界面设计理念、XAML语言结构、布局管理器、数据绑定、事件处理、文件资源管理以及设计模式和工具支持等方…

播放器视频卡顿,延迟的原因

之前测试过一些参数,也看到了1280x720就不卡,1920x1080明显就卡的多。那么就是说数据量太大了导致的延迟与卡顿!!!!! 有可能是协议,ffmpeg参数的问题。 还有一个问题,播…

Java基础知识总结(7)

StringBuffer类 StringBuffer类,线程安全的可变字符序列,初始化容量为16个字符。一个类似于String的字符串缓冲区,但是不能修改。 常用的是append和insert方法,可以重载,以接纳不同类型的参数类型 x.append("y") 等价于 insert(x…

python基础18_作用域与名称空间

先讲讲函数对象的概念 """ 什么是函数对象,就是把函数看成是一个对象,或者是一个变量 """ print(0) #这是不是调用的print这个函数 a print #是不是把函数赋值给a,也就是a就等于这个函数 a(1) b print(1) # 就是会调用print(1)这个函数,并且…