Linux 有很多桌面环境(GNOME、KDE、Xfce、Cinnamon...)和窗口系统(X11、Wayland、Mir...),似乎每个都有自己的方式来更改壁纸。是否有一些高级库,特别是在 C++(和 Qt 5)中,使开发人员能够以编程方式更改 Linux 中的墙纸,而不管窗口管理或桌面管理?我正在寻找类似的东西:
#include <the_lib>
#include <cstdlib>
int main(int argc, char ** argv) {
std::string theNewWallpaper = "path/to/my/wallpaper.jpg";
// Or a file, an image, or something else representing the wallpaper.
TheLib::changeWallpaper(theNewWallpaper);
// or a more complicated piece of code which does the same.
return EXIT_SUCCESS;
}