我是 gtk 3.0 + 的新手,我想知道当图像尺寸太大时人们如何处理这种情况。
是否可以使用固定大小的框架来显示图像(据我所知,容器大小似乎会根据其包含的小部件大小而变化,gtk_overlay 似乎是可能的,但我不确定如果还有其他方法可以做到这一点
如果第 1 步可行,当图像变得太大时,在固定大小的区域下,当我们在图像周围移动时,我们可以看到图像的不同部分(其他部分超出区域不显示
最佳答案
当你知道怎么做时,这很容易。在 C 中:
GdkPixbuf *pixbuf;
GtkWidget *preview_image;
preview_image = gtk_image_new ();
pixbuf = gdk_pixbuf_new_from_file_at_scale (file_uri,
128,
128,
TRUE, NULL);
gtk_image_set_from_pixbuf (GTK_IMAGE(preview_image), pixbuf);
基本上,您不能直接从文件中将图像放入任何类型的滚动“窗口”中。相反,将文件加载到 pixbuf 中,然后将 pixbuf 加载到图像中,所有的大小都会自动调整。
关于c++ - 当小部件太大时的 Gtk 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49658732/