gpt4 book ai didi

gtk - 获取 gtkada (GTK3) 中小部件的当前/默认字体

转载 作者:行者123 更新时间:2023-12-04 14:07:18 25 4
gpt4 key购买 nike

已创建一个显示 Text_View 的程序。我设置了按钮来允许用户更改配色方案和字体。效果很好。

但是当程序第一次启动时,它使用当前 GTK3 主题设置的任何字体。

我想要做的是找出当前字体是什么(在用户选择系列、粗细或大小的更改之前),获取字体大小,对其应用缩放因子,以应用于我将几行介绍性文本输出到 Text_View。

我尝试在这里查看较旧的答案,但他们似乎使用了已弃用的选项(GTK2),这些选项似乎不可用。

预先感谢您的帮助。

最佳答案

不是 GtkAda 方面的专家,但可以给您一些指导(链接到 GtkAda 源代码):

在 GTK+ 3 中,您可以使用 Get_Style_Context 查询小部件的样式。 。这会返回一个 Gtk_Style_Context,它基本上是一个类似 CSS 属性的容器。

您正在寻找font property font-size ,您可以使用 Get_Property 进行查询.

查询后,您创建了一个 Gtk_Text_Tag 。最方便的方法是通过 Get_Buffer 查询 View 的缓冲区。然后使用 Create_Tag .

您需要设置Size_PropertySize_Points_Property根据您查询的值(添加所需的附加尺寸)。我不确定返回的大小是否以 Pango 单位或点为单位,您需要弄清楚这一点。不管怎样,您必须设置 Size_Set_Property

最后,你调用Apply_Tag在 View 的缓冲区上将标记应用到给定范围内的文本。

关于gtk - 获取 gtkada (GTK3) 中小部件的当前/默认字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54508612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com