Я пытаюсь подключить графическую библиотеку Clean (в частности, ObjectIO) к Linux с помощью GDK. Библиотека состоит из части, не относящейся к ОС, которую я не хочу касаться из-за проблем с совместимостью, и конкретной части ОС, которую я могу коснуться.Создание GdkPixbuf из необработанных данных Bitmap
Одна из функций, которую я должен реализовать, - это тот, который берет необработанные данные из файла .bmp и должен построить GdkPixbuf
. Эта функция должна быть записана в C.
Мне известно о функции gdk_pixbuf_new_from_file()
, но я не получаю имя файла (и не могу изменить это, так как он находится в части библиотеки, не относящейся к ОС). Я получаю только исходные данные.
Я видел this manual entry, и я предполагаю, что я мог бы использовать gdk_pixbuf_new_from_data()
, но это требует, чтобы вы знаете строки походки изображений, из которых я не уверен, как получить его.
Есть ли способ получить строку из файла? Если нет, единственная возможность, которую я вижу, - создать временный файл с данными, а затем позвонить gdk_pixbuf_new_from_file()
- но это было бы действительно уродливо.
Я не удивлюсь, если строка шаг всегда был равен шириной. – icktoofay
@icktoofay сначала, я думал, ширина * 3 (вам нужно три байта для 24-битного изображения), но это пока не показывает хороших результатов. Я также пробовал номера вокруг этого. Кажется, это не так просто, к сожалению ... – Keelan