如何使用 GTK 将 rgb 转换为十六进制?

How to convert rgb to hexadecimal using GTK?

如何使用 GTK 将 rgb 转换为十六进制?

我可以使用 gdk_rgba_parse (GdkRGBA *rgba, const gchar *spec); 从十六进制转换为 rgb,但不能反过来。

您可以手动执行此操作:

sprintf(spec, "#%02X%02X%02X", (int)(rgba.red*255), (int)(rgba.green*255), (int)(rgba.blue*255));

请务必提供足够大的缓冲区来容纳字符串或使用 g_strdup_printf。