如何在 tcl 中创建彩色字体

How to create a colored font in tcl

我正在制作黑色背景的 canvas。这些 canvas 附有一些矩形和文本。我想使用白色的文本字体而不是默认的黑色。但由于字体没有使用颜色的选项,我不确定如何更改文本颜色。 我正在创建这样的文本。

.c create text $i $j -text "($i,$j)" -anchor ne -font fontTEMP_varwidth

font create fontTEMP_varwidth \
   -family {comic sans ms} \
      -size -10 \
         -weight bold \
         -col
            -slant roman

字体本身没有颜色(Tk 认为它们纯粹是关于字母的形状),但您可以设置颜色以在其他地方使用。特别是,canvas widget's text item type 支持标准的 -fill 选项,即用于呈现项目中文本的颜色:

.c create text $i $j -text "($i,$j)" -anchor ne -font fontTEMP_varwidth -fill red

如果您使用的是文本小部件,通常会在应用于文本的标签上设置颜色和字体。 (或者您将为整个小部件设置默认值。)