List of all classes, functions and methods in python-igraph
class TextDrawer(AbstractCairoDrawer):
Class that draws text on a Cairo context.
This class supports multi-line text unlike the original Cairo text drawing methods.
Class Variable | LEFT |
Undocumented |
Class Variable | CENTER |
Undocumented |
Class Variable | RIGHT |
Undocumented |
Class Variable | TOP |
Undocumented |
Class Variable | BOTTOM |
Undocumented |
Method | __init__ |
Constructs a new instance that will draw the given `text` on the given Cairo `context`. |
Property | text |
Returns the text to be drawn. |
Instance Variable | halign |
Undocumented |
Instance Variable | valign |
Undocumented |
Method | draw |
Draws the text in the current bounding box of the drawer. |
Method | get_text_layout |
Calculates the layout of the current text. `x` and `y` denote the coordinates where the drawing should start. If they are both ``None``, the current position of the context will be used. |
Method | draw_at |
No summary |
Method | text.setter |
Sets the text that will be drawn. |
Method | text_extents |
Returns the X-bearing, Y-bearing, width, height, X-advance and Y-advance of the text. |
Method | _iterlines |
Iterates over the label line by line and returns a tuple containing the folloing for each line: the line itself, the width of the line and the X-bearing of the line. |
Method | _iterlines_wrapped |
Iterates over the label line by line and returns a tuple containing the folloing for each line: the line itself, the width of the line and the X-bearing of the line. |
Instance Variable | _text |
Undocumented |
Inherited from AbstractCairoDrawer
:
Instance Variable | context |
Undocumented |
Property | bbox |
The bounding box of the drawing area where this drawer will draw. |
Method | bbox.setter |
Sets the bounding box of the drawing area where this drawer will draw. |
Instance Variable | _bbox |
Undocumented |
Method | _mark_point |
Marks the given point with a small circle on the canvas. Used primarily for debugging purposes. |
Constructs a new instance that will draw the given `text` on the given Cairo `context`.
Draws the text in the current bounding box of the drawer.
Since the class itself is an instance of `AbstractCairoDrawer`, it has an attribute named ``bbox`` which will be used as a bounding box.
Parameters | wrap | whether to allow re-wrapping of the text if it does not fit within the bounding box horizontally. |
Calculates the layout of the current text. `x` and `y` denote the coordinates where the drawing should start. If they are both ``None``, the current position of the context will be used.
Vertical alignment settings are not taken into account in this method as the text is not drawn within a box.
Parameters | x | The X coordinate of the reference point where the layout should start. |
y | The Y coordinate of the reference point where the layout should start. | |
width | The width of the box in which the text will be fitted. It matters only when the text is right-aligned or centered. The text will overflow the box if any of the lines is longer than the box width and `wrap` is ``False``. | |
wrap | whether to allow re-wrapping of the text if it does not fit within the given width. | |
Returns | a list consisting of ``(x, y, line)`` tuples where ``x`` and ``y`` refer to reference points on the Cairo canvas and ``line`` refers to the corresponding text that should be plotted there. |
Draws the text by setting up an appropriate path on the Cairo context and filling it. `x` and `y` denote the coordinates where the drawing should start. If they are both ``None``, the current position of the context will be used.
Vertical alignment settings are not taken into account in this method as the text is not drawn within a box.
Parameters | x | The X coordinate of the reference point where the layout should start. |
y | The Y coordinate of the reference point where the layout should start. | |
width | The width of the box in which the text will be fitted. It matters only when the text is right-aligned or centered. The text will overflow the box if any of the lines is longer than the box width and `wrap` is ``False``. | |
wrap | whether to allow re-wrapping of the text if it does not fit within the given width. |
Iterates over the label line by line and returns a tuple containing the folloing for each line: the line itself, the width of the line and the X-bearing of the line.
Iterates over the label line by line and returns a tuple containing the folloing for each line: the line itself, the width of the line and the X-bearing of the line.
The difference between this method and `_iterlines()` is that this method is allowed to re-wrap the line if necessary.
Parameters | width | The width of the box in which the text will be fitted. Lines will be wrapped if they are wider than this width. |
Sets the text that will be drawn.
If `text` is ``None``, it will be mapped to an empty string; otherwise, it will be converted to a string.
Returns the X-bearing, Y-bearing, width, height, X-advance and Y-advance of the text.
For multi-line text, the X-bearing and Y-bearing correspond to the first line, while the X-advance is extracted from the last line. and the Y-advance is the sum of all the Y-advances. The width and height correspond to the entire bounding box of the text.