2016-09-22 26 views
1

加載Gdk Pixbuf我想在本地硬盤上不存在它的情況下使用圖像文件。在我的程序中從字符串

因此,我用xxd -i生成一個包含圖像數據的unsigned char[],並將其嵌入到我的程序中。

但現在我被卡住試圖加載一個Gdk::Pixbuf(或一個Gtk圖像),因爲我似乎沒有找到一個功能,可以做到這一點。

回答

2

這聽起來像Gdk::Pixbuf::create_from_data的工作。

請注意,像這樣的數組是而不是一個字符串,這可能可以解釋爲什麼您在查找時遇到問題。

它在"Image Data in Memory"類別中,而不是隱藏的,另一方面。

EDIT2:在註釋後更改爲相同功能的gtkmm API包裝。

+0

不錯,謝謝:)我對所有「從內存」的東西感到困惑,因爲我沒有真正進入如何使用二進制數據工作,並不能很明白文件試圖告訴我什麼^^問候,tagelicht – tagelicht

+0

順便說一句,Gio :: Resource(或GResource)系統就是爲此而設計的。你只需要讓構建魔法正確。下面是一個例子,我使用gtkmm爲Glade UI文件執行此操作:https://github.com/murraycu/prefixsuffix/commit/fbe5f470ddbd3dffc044a0d216759fa8a6fe216d。在我的Glom項目中,我也爲圖標數據做了這個。 – murrayc

+1

由於問題是關於Gdk :: Pixbuf,而不是GdkPixbuf,這是正確的鏈接到gtkmm API:https://developer.gnome.org/gtkmm/stable/classGdk_1_1Pixbuf.html#a8a3b524f26acd2f9efc4abe9c294d341 – murrayc

相關問題