繁体   English   中英

调整不透明度并更新 Python 中 canvas 中的文本 object 的属性

[英]Adjusting opacity and updating the properties of a text object in a canvas in Python

我创建了一个 canvas 并在里面放了一张图片。 我还可以更改水印文本的属性,并希望在进行一些更改时更新 canvas 上的文本。 我使用 create_text 在 canvas 内部创建了文本,当我初始化程序时,我创建了一个变量。 text_variable = canvas.create_text(...) 但是,我也无法调整文本的不透明度。

问题:

  • 我无法调整不透明度
  • 将此文本放在 canvas 上后,我无法更新颜色、字体样式、字体大小和 position。

我预计:

  • 当我从编辑菜单更改某些属性时更改文本

  • 为文本添加不透明度调整

在此处输入图像描述

self.watermark_display = self.display_canvas.create_text(self.watermark_start_position_x, self.watermark_start_position_y, text="Plese write your watermark!", font=(self.fonttype.get(),self.fontsize.get()),fill=self.color_choice)
def update_watermark_display(self):
    self.display_canvas.itemconfig(self.watermark_display, self.watermark_start_position_x, self.watermark_start_position_y, text="Plese write your watermark!", font=(self.fonttype.get(),self.fontsize.get()),fill=self.color_choice)

当我尝试这样做时,我得到了类型错误。

 self.display_canvas.itemconfig(self.watermark_display, self.watermark_start_position_x, self.watermark_start_position_y, text="Plese write your watermark,". font=(self.fonttype,get().self.fontsize,get()).fill=self.color_choice)

TypeError: Canvas.itemconfigure() 从 2 到 3 个位置 arguments 但给出了 4 个

您不能使用itemconfig更改坐标。 相反,使用coords方法作为坐标,使用itemconfig作为项目配置。

self.display_canvas.itemconfig(
    self.watermark_display, 
    text="Plese write your watermark!", 
    font=(self.fonttype.get(),self.fontsize.get()),
    fill=self.color_choice
)
self.display_canvas.coords(
    self.watermark_display, 
    self.watermark_start_position_x, 
    self.watermark_start_position_y
)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM