- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我用的是 Gtk.Image
由 GdkPixbuf.Pixbuf
支持显示照片。我缩放照片以适应可用空间以响应 size-allocate
父小部件的信号。问题是在 HiDPI 显示器上,每个维度都是逻辑像素而不是设备像素,因此会发生以下情况:
GdkPixbuf.Pixbuf
到我从 size-allocate
得到的尺寸信号,照片占据了所需的物理空间,但它只使用了显示器分辨率的一半(假设设备像素与逻辑像素比为 2:1)。 GdkPixbuf.Pixbuf
至 get_scale_factor()
乘以我从 size-allocate
得到的尺寸信号,则照片将占用两倍的物理空间(即,它无法放入窗口中)。 Pixbuf
我提供的图像对应于设备像素而不是逻辑像素?
image = Gtk.Image()
image.set_from_file("subpixel.png")
尝试 2:
surface = cairo.ImageSurface.create_from_png("subpixel.png")
image = Gtk.Image()
image.set_from_surface(surface)
尝试 3:
pb = GdkPixbuf.Pixbuf.new_from_file("subpixel.png")
image = Gtk.Image.new_from_pixbuf(pb)
self.add(image)
尝试 4:
pb = GdkPixbuf.Pixbuf.new_from_file("subpixel.png")
surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, pb.get_width(), pb.get_height())
context = cairo.Context(surface)
Gdk.cairo_set_source_pixbuf(context, pb, 0, 0)
context.paint()
image = Gtk.Image()
image.set_from_surface(surface)
最佳答案
这通常是通过从像素数据创建 cairo 表面然后使用 gtk_image_set_from_surface()
来完成的。 .我不会说 Python,但在 C 中我这样做:
GdkPixbuf *pb = gdk_pixbuf_new_from_file(file, NULL);
if(pb) {
cairo_surface_t *s = gdk_cairo_surface_create_from_pixbuf(pb, 0, gtk_widget_get_window(w));
if(s) {
gtk_image_set_from_surface(GTK_IMAGE(w), s);
cairo_surface_destroy(s);
}
g_object_unref(pb);
}
这在这里工作正常。对比
gtk_image_set_from_file()
它不会使用逻辑像素,而是使用设备像素,因此不会应用任何缩放。
关于gtk3 - HiDPI 显示器上的 Gtk.Image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56531363/
RStudio 是用于 R 开发的出色 IDE。我想知道是否有任何方法可以很好地支持 HiDPI 分辨率? 我目前有 13 英寸显示器和 3200x1800 分辨率,甚至很难阅读 RStudio 选项
我使用 Java 8 创建了一个程序,该程序在 Eclipse IDE 中使用了 Swing GUI。为了将图像和图标缩放到适当的大小,它获取并使用屏幕分辨率。在 Eclipse 中编译程序后,程序显
我见过3 tickets去年在 bitbucket 上询问过这个问题,但从未看到明确的答案。 One这些票中的一些给出了一些代码,但我不知道该代码属于哪里。 var devicePixelRatio
有没有人知道如何在 hidpi 监视器上使用 ffmpeg 捕获正确的鼠标位置? 有一个问题 (https://trac.ffmpeg.org/ticket/4232) 说它已修复,但它不在最新版本中
我打算创建一个博客,我正在考虑如何以最佳质量提供图像,而不会过多地影响移动设备的加载时间。 我的内容栏大约是。 768 个显示点宽,我使用 Retina Macbook 发布屏幕截图,因此图像宽度至少
在 OS X 上使用 Qt 4.8.4 - 桌面应用程序开发。我需要能够在绘制时检测我是否在 hiDPI 显示器(“视网膜”)上。有谁知道如何实现这一目标? 最佳答案 您可以在 Qt 5 中使用 QS
我仍在收集理解 HTML5 中的 Web 2 打印编辑器所需的内容。我正在使用 FabricJS 和许多其他第 3 方工具来实现它。 我最新的障碍是我的三星 Chromebook Pro,它有一个 H
我正在构建一个投资组合网站,我的滚动条在触及页面顶部或底部时卡住,有时甚至更快。我认为这个问题与更高 dpi 屏幕上的像素数量有关。我还使用了一些效果,如视差、平滑滚动、滚动捕捉、交叉点检测器等。其中
最初我只能在 Chrome 版本 65.0.3325.181 的 Mac Retina 显示器上重现。 但是,通过在 Chrome 开发者工具的设备列表中选择“带 HiDPI 屏幕的笔记本电脑”,我已
我在安装了 KDE Neon 的笔记本电脑上运行 android 模拟器 26.1.3。 KDE Neon 是基于 Ubuntu 16.04 和最新 KDE 的发行版。我的笔记本电脑的屏幕分辨率是 1
我刚刚试用了 JavaFX Hello World Example在 Arch Linux 的 4k 屏幕上,但不幸的是 GUI 无法缩放。 documentation说 Hi-DPI support
从 3.6.1 升级到 Android Studio 4.0.1 Build #AI-193.6911.18.40.6626763 后,IDE 的比例因子变得不正确(所有 UI 元素都变小了)。在 i
我正在尝试在 HiDPI 模式下在 rMBP 上运行 genymotion。显然我的 Virtualbox 版本已经有 NSHighResolutionCapable 在 Contents/Info.
我用的是 Gtk.Image由 GdkPixbuf.Pixbuf 支持显示照片。我缩放照片以适应可用空间以响应 size-allocate父小部件的信号。问题是在 HiDPI 显示器上,每个维度都是逻
我有一个使用 java swing 的 java 桌面应用程序,它可以在正常显示下正常工作。 但是当~hiDpi~显示(3200*1800)时,整个应用程序太小了。 由于应用程序代码非常庞大且复杂,因
我在 hidpi 屏幕(276 dpi)上使用 gnuplot。 我恢复的图很难看清楚,线条太细,字体和按钮太小。 有没有办法配置 gnuplot 以在启动时自动放大 hidpi 屏幕的这些参数? 最
我在 hidpi 机器(带 4k 显示器的 xps 9370)上安装了 sqldeveloper 18.2,但由于缩放问题无法使用。 我尝试使用不同的选项启动它: 原样 - 界面图标和字体太小 随着界
如何使用 Markdown 生成的 HTML 在 HiDPI 显示器上显示图像,以便以高分辨率显示图像。通常,我会创建 带有 srcset 的标签属性或设置 width和 height适本地在每个图像
我接触 CSS 已经有一段时间了,但是图像元素的 srcset 和 sizes 让我很困惑。这是我认为可行的示例。 我们的想法是让图像占视口(viewport)的 100%,直到视口(viewpor
我曾经在 vmoptions 文件中使用带有 -Dhidpi=true 标志的 IntelliJ 14,并且在缩放方面没有任何问题。我刚刚升级到 15,它具有“True HiDPI”,但它似乎在我的
我是一名优秀的程序员,十分优秀!