Вам необходимо создать новый GdkPixbufLoader
и передать ему данные, которые вы прочитали с GInputStream
:
GdkPixbufLoader *loader = gdk_pixbuf_loader_new ();
gint num_bytes = g_input_stream_read (input_stream, buffer, ...);
gdk_pixbuf_loader_write (loader, buffer, num_bytes, error);
Однако это имеет смысл, если вы выполняете чтение асинхронно или порциями (например, для отображения прогрессивно загруженного JPEG или PNG). Если вы просто читаете все данные одновременно с блокировкой, используйте более простой gdk_pixbuf_new_from_stream()
.