如何构建一个自定义的eglfs光标图集?

我正在尝试为我的嵌入式Linux QT应用程序(QT5.5)更改eglfs鼠标光标图形。 我有新的游标图集PNG和新的JSON描述符文件,但文档相当模糊:

“..通过将QT_QPA_EGLFS_CURSOR环境变量设置为JSON文件的名称,可以提供自定义的光标地图集,该文件也可以通过Qt的资源系统嵌入到应用程序中。”

如果可能,我宁愿将所有内容都保存在资源系统中,但是我不知道如何去做。我需要一个包含JSON文件路径的特定qrc文件吗? 我假设PNG文件也需要添加为资源,以便它被内置到应用程序中?

如果通过资源系统添加它是一个糟糕的主意,那么设置QT_QPA_EGLFS_CURSOR环境变量的正确位置在哪里? 我目前通过“-platform eglfs”在命令行上指定平台; 这将是好的,还是我需要将平台设置为构建中的eglfs?


经过多次尝试,错误和挖掘我发现了我在资源系统内寻找的解决方案。

创建一个名为“cursor.qrc”的新资源文件,其内容需要两行:

path/to/your/custom-cursor-atlas.png
cursor.json

第一行(光标图集的路径)必须与您的资源目录相关。

然后您需要将JSON文件(文档中描述的内容)放在资源目录的根目录中。 它必须被称为“cursor.json”,其图像位置行必须与新资源文件中的位置匹配,并且格式为:

"image": ":/path/to/your/custom-cursor-atlas.png",

然后这将包含您的光标图集资源,Qt会在您的应用程序启动时找到它。


运行时解决方案示例:

export XDG_RUNTIME_DIR=~
export QT_QPA_EGLFS_CURSOR=~/cursor.json

cursor.json

"image": "cursor.png",

把你自定义的cursor.png图集放到你的家目录( ~ ),然后从那里运行Qt应用程序。

链接地址: http://www.djcxy.com/p/79001.html

上一篇: How to build with a custom eglfs cursor atlas?

下一篇: Add QML files to Qt Creator project tree with CMake