类文档
class CairoTextDrawer(AbstractCairoDrawer)
在 Cairo 上下文中绘制文本的类。
此类支持多行文本,这与原始 Cairo 文本绘制方法不同。
方法 | __init__ |
构造一个新的实例,该实例将绘制给定的文本在给定的 Cairo上下文中. |
方法 | draw |
在绘图器的当前边界框中绘制文本。 |
方法 | draw |
通过在 Cairo 上下文中设置适当的路径并填充它来绘制文本。x和y表示绘图应开始的坐标。如果它们都是None,将使用上下文的当前位置。 |
方法 | get |
计算当前文本的布局。x和y表示绘图应开始的坐标。如果它们都是None,将使用上下文的当前位置。 |
方法 | text |
设置将要绘制的文本。 |
方法 | text |
返回文本的 X 轴承、Y 轴承、宽度、高度、X 提前量和 Y 提前量。 |
常量 | BOTTOM |
未归档 |
常量 | CENTER |
未归档 |
常量 | LEFT |
未归档 |
常量 | RIGHT |
未归档 |
常量 | TOP |
未归档 |
实例变量 | halign |
未归档 |
实例变量 | valign |
未归档 |
属性 | 文本 |
返回要绘制的文本。 |
方法 | _iterlines |
逐行迭代标签,并返回一个元组,其中包含每行的以下信息:该行本身、该行的宽度和该行的 X 轴承。 |
方法 | _iterlines |
逐行迭代标签,并返回一个元组,其中包含每行的以下信息:该行本身、该行的宽度和该行的 X 轴承。 |
实例变量 | _text |
未归档 |
方法 | bbox |
设置此绘制器将在其中绘制的绘图区域的边界框。 |
实例变量 | 上下文中 |
未归档 |
属性 | bbox |
此绘制器将在其中绘制的绘图区域的边界框。 |
方法 | _mark |
在画布上用一个小圆圈标记给定的点。主要用于调试目的。 |
实例变量 | _bbox |
未归档 |
在绘图器的当前边界框中绘制文本。
由于该类本身是 AbstractCairoDrawer
的一个实例,因此它具有一个名为bbox的属性,该属性将用作边界框。
参数 | |
wrap | 如果文本在水平方向上不适合边界框,是否允许重新换行。 |
通过在 Cairo 上下文中设置适当的路径并填充它来绘制文本。x和y表示绘图应开始的坐标。如果它们都是None,将使用上下文的当前位置。
在此方法中不考虑垂直对齐设置,因为文本不是在框中绘制的。
参数 | |
x | 布局应开始的参考点的 X 坐标。 |
y | 布局应开始的参考点的 Y 坐标。 |
width | 文本将适合的框的宽度。仅当文本右对齐或居中对齐时才重要。如果任何行的长度大于框的宽度且wrap是False. |
wrap | ,文本将溢出框。是否允许重新换行文本(如果它不适合给定的宽度)。 |
计算当前文本的布局。x和y表示绘图应开始的坐标。如果它们都是None,将使用上下文的当前位置。
在此方法中不考虑垂直对齐设置,因为文本不是在框中绘制的。
参数 | |
x | 布局应开始的参考点的 X 坐标。 |
y | 布局应开始的参考点的 Y 坐标。 |
width | 文本将适合的框的宽度。仅当文本右对齐或居中对齐时才重要。如果任何行的长度大于框的宽度且wrap是False. |
wrap | ,文本将溢出框。是否允许重新换行文本(如果它不适合给定的宽度)。 |
返回值 | |
一个包含(x, y, line)元组的列表,其中x和y指的是 Cairo 画布上的参考点,而line指的是应该在那里绘制的相应文本。 |
返回文本的 X 轴承、Y 轴承、宽度、高度、X 提前量和 Y 提前量。
对于多行文本,X 轴承和 Y 轴承对应于第一行,而 X 提前量是从最后一行提取的,Y 提前量是所有 Y 提前量的总和。宽度和高度对应于文本的整个边界框。
逐行迭代标签,并返回一个元组,其中包含每行的以下信息:该行本身、该行的宽度和该行的 X 轴承。
此方法与 _iterlines()
的区别在于,如果需要,此方法允许重新换行。
参数 | |
width | 文本将适合的框的宽度。如果行的宽度大于此宽度,则将换行。 |