Blender V4.3
blf_py_api.cc File Reference
#include "blf_py_api.hh"
#include "../generic/py_capi_utils.hh"
#include <Python.h>
#include "../../blenfont/BLF_api.hh"
#include "BLI_utildefines.h"
#include "python_utildefines.hh"

Go to the source code of this file.

Macros

#define PY_SSIZE_T_CLEAN
 

Functions

 PyDoc_STRVAR (py_blf_position_doc, ".. function:: position(fontid, x, y, z)\n" "\n" " Set the position for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg x: X axis position to draw the text.\n" " :type x: float\n" " :arg y: Y axis position to draw the text.\n" " :type y: float\n" " :arg z: Z axis position to draw the text.\n" " :type z: float\n")
 
static PyObject * py_blf_position (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_size_doc, ".. function:: size(fontid, size)\n" "\n" " Set the size for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg size: Point size of the font.\n" " :type size: float\n")
 
static PyObject * py_blf_size (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_aspect_doc, ".. function:: aspect(fontid, aspect)\n" "\n" " Set the aspect for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg aspect: The aspect ratio for text drawing to use.\n" " :type aspect: float\n")
 
static PyObject * py_blf_aspect (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_color_doc, ".. function:: color(fontid, r, g, b, a)\n" "\n" " Set the color for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg r: red channel 0.0 - 1.0.\n" " :type r: float\n" " :arg g: green channel 0.0 - 1.0.\n" " :type g: float\n" " :arg b: blue channel 0.0 - 1.0.\n" " :type b: float\n" " :arg a: alpha channel 0.0 - 1.0.\n" " :type a: float\n")
 
static PyObject * py_blf_color (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_draw_doc, ".. function:: draw(fontid, text)\n" "\n" " Draw text in the current context.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg text: the text to draw.\n" " :type text: str\n")
 
static PyObject * py_blf_draw (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_dimensions_doc, ".. function:: dimensions(fontid, text)\n" "\n" " Return the width and height of the text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg text: the text to draw.\n" " :type text: str\n" " :return: the width and height of the text.\n" " :rtype: tuple[float, float]\n")
 
static PyObject * py_blf_dimensions (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_clipping_doc, ".. function:: clipping(fontid, xmin, ymin, xmax, ymax)\n" "\n" " Set the clipping, enable/disable using CLIPPING.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg xmin: Clip the drawing area by these bounds.\n" " :type xmin: float\n" " :arg ymin: Clip the drawing area by these bounds.\n" " :type ymin: float\n" " :arg xmax: Clip the drawing area by these bounds.\n" " :type xmax: float\n" " :arg ymax: Clip the drawing area by these bounds.\n" " :type ymax: float\n")
 
static PyObject * py_blf_clipping (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_word_wrap_doc, ".. function:: word_wrap(fontid, wrap_width)\n" "\n" " Set the wrap width, enable/disable using WORD_WRAP.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg wrap_width: The width (in pixels) to wrap words at.\n" " :type wrap_width: int\n")
 
static PyObject * py_blf_word_wrap (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_disable_doc, ".. function:: disable(fontid, option)\n" "\n" " Disable option.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg option: One of ROTATION, CLIPPING, SHADOW or KERNING_DEFAULT.\n" " :type option: int\n")
 
static PyObject * py_blf_disable (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_enable_doc, ".. function:: enable(fontid, option)\n" "\n" " Enable option.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg option: One of ROTATION, CLIPPING, SHADOW or KERNING_DEFAULT.\n" " :type option: int\n")
 
static PyObject * py_blf_enable (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_rotation_doc, ".. function:: rotation(fontid, angle)\n" "\n" " Set the text rotation angle, enable/disable using ROTATION.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg angle: The angle for text drawing to use.\n" " :type angle: float\n")
 
static PyObject * py_blf_rotation (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_shadow_doc, ".. function:: shadow(fontid, level, r, g, b, a)\n" "\n" " Shadow options, enable/disable using SHADOW .\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg level: The blur level (0, 3, 5) or outline (6).\n" " :type level: int\n" " :arg r: Shadow color (red channel 0.0 - 1.0).\n" " :type r: float\n" " :arg g: Shadow color (green channel 0.0 - 1.0).\n" " :type g: float\n" " :arg b: Shadow color (blue channel 0.0 - 1.0).\n" " :type b: float\n" " :arg a: Shadow color (alpha channel 0.0 - 1.0).\n" " :type a: float\n")
 
static PyObject * py_blf_shadow (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_shadow_offset_doc, ".. function:: shadow_offset(fontid, x, y)\n" "\n" " Set the offset for shadow text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load`, for default " "font use 0.\n" " :type fontid: int\n" " :arg x: Vertical shadow offset value in pixels.\n" " :type x: float\n" " :arg y: Horizontal shadow offset value in pixels.\n" " :type y: float\n")
 
static PyObject * py_blf_shadow_offset (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_load_doc, ".. function:: load(filepath)\n" "\n" " Load a new font.\n" "\n" " :arg filepath: the filepath of the font.\n" " :type filepath: str | bytes\n" " :return: the new font's fontid or -1 if there was an error.\n" " :rtype: int\n")
 
static PyObject * py_blf_load (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (py_blf_unload_doc, ".. function:: unload(filepath)\n" "\n" " Unload an existing font.\n" "\n" " :arg filepath: the filepath of the font.\n" " :type filepath: str | bytes\n")
 
static PyObject * py_blf_unload (PyObject *, PyObject *args)
 
 PyDoc_STRVAR (BLF_doc, "This module provides access to Blender's text drawing functions.")
 
PyObject * BPyInit_blf ()
 

Variables

static PyMethodDef BLF_methods []
 
static PyModuleDef BLF_module_def
 

Detailed Description

This file defines the 'bgl' module, used for drawing text in OpenGL.

Definition in file blf_py_api.cc.

Macro Definition Documentation

◆ PY_SSIZE_T_CLEAN

#define PY_SSIZE_T_CLEAN

Definition at line 12 of file blf_py_api.cc.

Function Documentation

◆ BPyInit_blf()

PyObject * BPyInit_blf ( void )

◆ py_blf_aspect()

static PyObject * py_blf_aspect ( PyObject * ,
PyObject * args )
static

Definition at line 95 of file blf_py_api.cc.

References BLF_aspect().

◆ py_blf_clipping()

static PyObject * py_blf_clipping ( PyObject * ,
PyObject * args )
static

Definition at line 219 of file blf_py_api.cc.

References BLF_clipping().

◆ py_blf_color()

static PyObject * py_blf_color ( PyObject * ,
PyObject * args )
static

Definition at line 127 of file blf_py_api.cc.

References BLF_color4fv().

◆ py_blf_dimensions()

static PyObject * py_blf_dimensions ( PyObject * ,
PyObject * args )
static

Definition at line 183 of file blf_py_api.cc.

References BLF_width_and_height(), PyTuple_SET_ITEMS, and ret.

◆ py_blf_disable()

static PyObject * py_blf_disable ( PyObject * ,
PyObject * args )
static

Definition at line 271 of file blf_py_api.cc.

References BLF_disable().

◆ py_blf_draw()

static PyObject * py_blf_draw ( PyObject * ,
PyObject * args )
static

Definition at line 154 of file blf_py_api.cc.

References BLF_draw().

◆ py_blf_enable()

static PyObject * py_blf_enable ( PyObject * ,
PyObject * args )
static

Definition at line 296 of file blf_py_api.cc.

References BLF_enable().

◆ py_blf_load()

static PyObject * py_blf_load ( PyObject * ,
PyObject * args )
static

◆ py_blf_position()

static PyObject * py_blf_position ( PyObject * ,
PyObject * args )
static

Definition at line 43 of file blf_py_api.cc.

References BLF_position(), x, y, and z().

◆ py_blf_rotation()

static PyObject * py_blf_rotation ( PyObject * ,
PyObject * args )
static

Definition at line 321 of file blf_py_api.cc.

References angle(), and BLF_rotation().

◆ py_blf_shadow()

static PyObject * py_blf_shadow ( PyObject * ,
PyObject * args )
static

Definition at line 355 of file blf_py_api.cc.

References BLF_shadow(), and ELEM.

◆ py_blf_shadow_offset()

static PyObject * py_blf_shadow_offset ( PyObject * ,
PyObject * args )
static

Definition at line 390 of file blf_py_api.cc.

References BLF_shadow_offset(), x, and y.

◆ py_blf_size()

static PyObject * py_blf_size ( PyObject * ,
PyObject * args )
static

Definition at line 69 of file blf_py_api.cc.

References BLF_size(), and size().

◆ py_blf_unload()

static PyObject * py_blf_unload ( PyObject * ,
PyObject * args )
static

◆ py_blf_word_wrap()

static PyObject * py_blf_word_wrap ( PyObject * ,
PyObject * args )
static

Definition at line 245 of file blf_py_api.cc.

References BLF_wordwrap().

◆ PyDoc_STRVAR() [1/16]

PyDoc_STRVAR ( BLF_doc ,
"This module provides access to Blender's text drawing functions."  )

◆ PyDoc_STRVAR() [2/16]

PyDoc_STRVAR ( py_blf_aspect_doc ,
".. function:: aspect(fontid, aspect)\n" "\n" " Set the aspect for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg aspect:The aspect ratio for text drawing to use.\n" " :type aspect:float\n"  )

◆ PyDoc_STRVAR() [3/16]

PyDoc_STRVAR ( py_blf_clipping_doc ,
".. function:: clipping(fontid, xmin, ymin, xmax, ymax)\n" "\n" " Set the clipping,
enable/disable using CLIPPING.\n" "\n" " :arg fontid:The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg xmin:Clip the drawing area by these bounds.\n" " :type xmin:float\n" " :arg ymin:Clip the drawing area by these bounds.\n" " :type ymin:float\n" " :arg xmax:Clip the drawing area by these bounds.\n" " :type xmax:float\n" " :arg ymax:Clip the drawing area by these bounds.\n" " :type ymax:float\n"  )

◆ PyDoc_STRVAR() [4/16]

PyDoc_STRVAR ( py_blf_color_doc ,
".. function:: color(fontid, r, g, b, a)\n" "\n" " Set the color for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg r:red channel 0.0 - 1.0.\n" " :type r:float\n" " :arg g:green channel 0.0 - 1.0.\n" " :type g:float\n" " :arg b:blue channel 0.0 - 1.0.\n" " :type b:float\n" " :arg a:alpha channel 0.0 - 1.0.\n" " :type a:float\n"  )

◆ PyDoc_STRVAR() [5/16]

PyDoc_STRVAR ( py_blf_dimensions_doc ,
".. function:: dimensions(fontid, text)\n" "\n" " Return the width and height of the text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg text:the text to draw.\n" " :type text:str\n" " :return:the width and height of the text.\n" " :rtype:tuple\n" [float, float] )

◆ PyDoc_STRVAR() [6/16]

PyDoc_STRVAR ( py_blf_disable_doc ,
".. function:: disable(fontid, option)\n" "\n" " Disable option.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg option:One of ROTATION,
CLIPPING ,
SHADOW or KERNING_DEFAULT.\n" " :type option:int\n"  )

◆ PyDoc_STRVAR() [7/16]

PyDoc_STRVAR ( py_blf_draw_doc ,
".. function:: draw(fontid, text)\n" "\n" " Draw text in the current context.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg text:the text to draw.\n" " :type text:str\n"  )

◆ PyDoc_STRVAR() [8/16]

PyDoc_STRVAR ( py_blf_enable_doc ,
".. function:: enable(fontid, option)\n" "\n" " Enable option.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg option:One of ROTATION,
CLIPPING ,
SHADOW or KERNING_DEFAULT.\n" " :type option:int\n"  )

◆ PyDoc_STRVAR() [9/16]

PyDoc_STRVAR ( py_blf_load_doc ,
".. function:: load(filepath)\n" "\n" " Load a new font.\n" "\n" " :arg filepath: the filepath of the font.\n" " :type filepath: str | bytes\n" " :return: the new font's fontid or -1 if there was an error.\n" " :rtype: int\n"  )

◆ PyDoc_STRVAR() [10/16]

PyDoc_STRVAR ( py_blf_position_doc ,
".. function:: position(fontid, x, y, z)\n" "\n" " Set the position for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg x:X axis position to draw the text.\n" " :type x:float\n" " :arg y:Y axis position to draw the text.\n" " :type y:float\n" " :arg z:Z axis position to draw the text.\n" " :type z:float\n"  )

◆ PyDoc_STRVAR() [11/16]

PyDoc_STRVAR ( py_blf_rotation_doc ,
".. function:: rotation(fontid, angle)\n" "\n" " Set the text rotation angle,
enable/disable using ROTATION.\n" "\n" " :arg fontid:The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg angle:The angle for text drawing to use.\n" " :type angle:float\n"  )

◆ PyDoc_STRVAR() [12/16]

PyDoc_STRVAR ( py_blf_shadow_doc ,
".. function:: shadow(fontid, level, r, g, b, a)\n" "\n" " Shadow options,
enable/disable using SHADOW .\n" "\n" " :arg fontid:The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg level:The blur level(0, 3, 5) or outline(6).\n" " :type level:int\n" " :arg r:Shadow color(red channel 0.0 - 1.0).\n" " :type r:float\n" " :arg g:Shadow color(green channel 0.0 - 1.0).\n" " :type g:float\n" " :arg b:Shadow color(blue channel 0.0 - 1.0).\n" " :type b:float\n" " :arg a:Shadow color(alpha channel 0.0 - 1.0).\n" " :type a:float\n"  )

◆ PyDoc_STRVAR() [13/16]

PyDoc_STRVAR ( py_blf_shadow_offset_doc ,
".. function:: shadow_offset(fontid, x, y)\n" "\n" " Set the offset for shadow text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg x:Vertical shadow offset value in pixels.\n" " :type x:float\n" " :arg y:Horizontal shadow offset value in pixels.\n" " :type y:float\n"  )

◆ PyDoc_STRVAR() [14/16]

PyDoc_STRVAR ( py_blf_size_doc ,
".. function:: size(fontid, size)\n" "\n" " Set the size for drawing text.\n" "\n" " :arg fontid: The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg size:Point size of the font.\n" " :type size:float\n"  )

◆ PyDoc_STRVAR() [15/16]

PyDoc_STRVAR ( py_blf_unload_doc ,
".. function:: unload(filepath)\n" "\n" " Unload an existing font.\n" "\n" " :arg filepath: the filepath of the font.\n" " :type filepath: str | bytes\n"  )

◆ PyDoc_STRVAR() [16/16]

PyDoc_STRVAR ( py_blf_word_wrap_doc ,
".. function:: word_wrap(fontid, wrap_width)\n" "\n" " Set the wrap width,
enable/disable using WORD_WRAP.\n" "\n" " :arg fontid:The id of the typeface as returned by :func:`blf.load` ,
for default " "font use 0.\n" " :type fontid:int\n" " :arg wrap_width:The width(in pixels) to wrap words at.\n" " :type wrap_width:int\n"  )

Variable Documentation

◆ BLF_methods

PyMethodDef BLF_methods[]
static
Initial value:
= {
{"aspect", (PyCFunction)py_blf_aspect, METH_VARARGS, py_blf_aspect_doc},
{"clipping", (PyCFunction)py_blf_clipping, METH_VARARGS, py_blf_clipping_doc},
{"word_wrap", (PyCFunction)py_blf_word_wrap, METH_VARARGS, py_blf_word_wrap_doc},
{"disable", (PyCFunction)py_blf_disable, METH_VARARGS, py_blf_disable_doc},
{"dimensions", (PyCFunction)py_blf_dimensions, METH_VARARGS, py_blf_dimensions_doc},
{"draw", (PyCFunction)py_blf_draw, METH_VARARGS, py_blf_draw_doc},
{"enable", (PyCFunction)py_blf_enable, METH_VARARGS, py_blf_enable_doc},
{"position", (PyCFunction)py_blf_position, METH_VARARGS, py_blf_position_doc},
{"rotation", (PyCFunction)py_blf_rotation, METH_VARARGS, py_blf_rotation_doc},
{"shadow", (PyCFunction)py_blf_shadow, METH_VARARGS, py_blf_shadow_doc},
{"shadow_offset", (PyCFunction)py_blf_shadow_offset, METH_VARARGS, py_blf_shadow_offset_doc},
{"size", (PyCFunction)py_blf_size, METH_VARARGS, py_blf_size_doc},
{"color", (PyCFunction)py_blf_color, METH_VARARGS, py_blf_color_doc},
{"load", (PyCFunction)py_blf_load, METH_VARARGS, py_blf_load_doc},
{"unload", (PyCFunction)py_blf_unload, METH_VARARGS, py_blf_unload_doc},
{nullptr, nullptr, 0, nullptr},
}
static PyObject * py_blf_word_wrap(PyObject *, PyObject *args)
static PyObject * py_blf_enable(PyObject *, PyObject *args)
static PyObject * py_blf_aspect(PyObject *, PyObject *args)
Definition blf_py_api.cc:95
static PyObject * py_blf_color(PyObject *, PyObject *args)
static PyObject * py_blf_shadow_offset(PyObject *, PyObject *args)
static PyObject * py_blf_unload(PyObject *, PyObject *args)
static PyObject * py_blf_load(PyObject *, PyObject *args)
static PyObject * py_blf_shadow(PyObject *, PyObject *args)
static PyObject * py_blf_dimensions(PyObject *, PyObject *args)
static PyObject * py_blf_clipping(PyObject *, PyObject *args)
static PyObject * py_blf_rotation(PyObject *, PyObject *args)
static PyObject * py_blf_disable(PyObject *, PyObject *args)
static PyObject * py_blf_draw(PyObject *, PyObject *args)
static PyObject * py_blf_size(PyObject *, PyObject *args)
Definition blf_py_api.cc:69
static PyObject * py_blf_position(PyObject *, PyObject *args)
Definition blf_py_api.cc:43

Definition at line 459 of file blf_py_api.cc.

◆ BLF_module_def

PyModuleDef BLF_module_def
static
Initial value:
= {
PyModuleDef_HEAD_INIT,
"blf",
BLF_doc,
0,
nullptr,
nullptr,
nullptr,
nullptr,
}
static PyMethodDef BLF_methods[]

Definition at line 482 of file blf_py_api.cc.

Referenced by BPyInit_blf().