我试图让Gtk::Image
小部件显示文件中的图片,但阻止小部件扩大大小,所以我从 a 加载它Gdk::Pixbuf
然后缩放图片。我使用Gdk::Pixbuf
而不是GdkPixBuf
因为后者适用于常规指针,但Gtk::Image
需要一个Glib::RefPtr<Gdk::Pixbuf>
. (只是提到所有这些,以防有更好的方法来实现我不知道的我正在做的事情。)
auto pixbuf = Gdk::Pixbuf::create_from_file("/home/raitis/Music/WRLD/Awake EP/cover.jpg");
auto scaled = pixbuf->scale_simple(48, 48, Gdk::InterpType::NEAREST);
image->set(scaled);
无论如何,问题是虽然我正在关注文档Gdk::Pixbuf
,但我的代码中的第 2 行会生成错误:
error: ‘NEAREST’ is not a member of ‘Gdk::InterpType’
auto scaled = pixbuf->scale_simple(48, 48, Gdk::InterpType::NEAREST);
^~~~~~~
相反,尝试GDK_INTERP_NEAREST
也会导致错误。:(
no known conversion for argument 3 from ‘GdkInterpType’ to ‘Gdk::InterpType’