类文档

在 Cairo 上下文中绘制文本的类。

与原始 Cairo 文本绘制方法不同,此类支持多行文本。

方法 __init__ 构造一个新实例,该实例将绘制给定text在给定的 Cairocontext.
方法 draw 在绘制器的当前边界框中绘制文本。
方法 draw_at 通过在 Cairo 上下文中设置适当的路径并填充它来绘制文本。xy表示绘图应开始的坐标。如果它们都为None,将使用上下文的当前位置。
方法 get_text_layout 计算当前文本的布局。xy表示绘图应开始的坐标。如果它们都为None,将使用上下文的当前位置。
方法 text.setter 设置将要绘制的文本。
方法 text_extents 返回文本的 X 轴偏移量、Y 轴偏移量、宽度、高度、X 轴前进量和 Y 轴前进量。
类变量 BOTTOM 未文档化
类变量 CENTER 未文档化
类变量 LEFT 未文档化
类变量 RIGHT 未文档化
类变量 TOP 未文档化
实例变量 halign 未文档化
实例变量 valign 未文档化
属性 text 返回将要绘制的文本。
方法 _iterlines 逐行迭代标签,并为每行返回一个元组,其中包含:行本身、行的宽度和行的 X 轴偏移量。
方法 _iterlines_wrapped 逐行迭代标签,并为每行返回一个元组,其中包含:行本身、行的宽度和行的 X 轴偏移量。
实例变量 _text 未文档化

继承自 AbstractCairoDrawer

方法 bbox.setter 设置此绘制器将绘图的绘图区域的边界框。
实例变量 context 未文档化
属性 bbox 此绘制器将绘图的绘图区域的边界框。
方法 _mark_point 在画布上用一个小圆圈标记给定点。主要用于调试目的。
实例变量 _bbox 未文档化
def __init__(self, context, text='', halign='center', valign='center'): (来源)

构造一个新实例,该实例将绘制给定text在给定的 Cairocontext.

def draw(self, wrap=False): (来源)

在绘制器的当前边界框中绘制文本。

由于该类本身是 AbstractCairoDrawer 的实例,因此它有一个名为bbox的属性,将用作边界框。

参数
wrap如果文本在水平方向上不适合边界框,是否允许重新换行。
def draw_at(self, x=None, y=None, width=None, wrap=False): (来源)

通过在 Cairo 上下文中设置适当的路径并填充它来绘制文本。xy表示绘图应开始的坐标。如果它们都为None,将使用上下文的当前位置。

由于文本不是在框内绘制的,因此此方法不考虑垂直对齐设置。

参数
x布局应开始的参考点的 X 坐标。
y布局应开始的参考点的 Y 坐标。
width文本将适应的框的宽度。仅当文本右对齐或居中时才重要。如果任何行长于框宽度并且wrapFalse.
wrap如果文本不适合给定宽度,是否允许重新换行。
def get_text_layout(self, x=None, y=None, width=None, wrap=False): (来源)

计算当前文本的布局。xy表示绘图应开始的坐标。如果它们都为None,将使用上下文的当前位置。

由于文本不是在框内绘制的,因此此方法不考虑垂直对齐设置。

参数
x布局应开始的参考点的 X 坐标。
y布局应开始的参考点的 Y 坐标。
width文本将适应的框的宽度。仅当文本右对齐或居中时才重要。如果任何行长于框宽度并且wrapFalse.
wrap如果文本不适合给定宽度,是否允许重新换行。
返回
一个由(x, y, line)元组组成,其中xy指的是 Cairo 画布上的参考点,并且line指的是应该在那里绘制的相应文本。
def text(self, text): (来源)

设置将要绘制的文本。

如果textNone,它将被映射为空字符串;否则,它将被转换为字符串。

def text_extents(self): (来源)

返回文本的 X 轴偏移量、Y 轴偏移量、宽度、高度、X 轴前进量和 Y 轴前进量。

对于多行文本,X 轴偏移量和 Y 轴偏移量对应于第一行,而 X 轴前进量从最后一行提取。Y 轴前进量是所有 Y 轴前进量之和。宽度和高度对应于文本的整个边界框。

未文档化

未文档化

未文档化

未文档化

未文档化

未文档化

未文档化

返回将要绘制的文本。

def _iterlines(self): (来源)

逐行迭代标签,并为每行返回一个元组,其中包含:行本身、行的宽度和行的 X 轴偏移量。

def _iterlines_wrapped(self, width): (来源)

逐行迭代标签,并为每行返回一个元组,其中包含:行本身、行的宽度和行的 X 轴偏移量。

此方法与 _iterlines() 的区别在于,此方法在必要时允许重新换行。

参数
width文本将适应的框的宽度。如果行的宽度大于此宽度,则会换行。

未文档化