53 OCCTL_TEXT_FONT_ASPECT_BOLD = 1,
54 OCCTL_TEXT_FONT_ASPECT_ITALIC = 2,
55 OCCTL_TEXT_FONT_ASPECT_BOLD_ITALIC = 3,
56 OCCTL_TEXT_FONT_ASPECT_RESERVED_FUTURE = 0x7fffffff
65 OCCTL_TEXT_HALIGN_CENTER = 1,
66 OCCTL_TEXT_HALIGN_RIGHT = 2,
67 OCCTL_TEXT_HALIGN_RESERVED_FUTURE = 0x7fffffff
75 OCCTL_TEXT_VALIGN_BOTTOM = 0,
77 OCCTL_TEXT_VALIGN_CENTER = 2,
78 OCCTL_TEXT_VALIGN_TOP = 3,
79 OCCTL_TEXT_VALIGN_RESERVED_FUTURE = 0x7fffffff
82#define OCCTL_TEXT_INFO_VERSION_1 1u
83#define OCCTL_TEXT_LAYOUT_OPTIONS_VERSION_1 1u
84#define OCCTL_TEXT_METRICS_VERSION_1 1u
150#define OCCTL_TEXT_INFO_INIT \
151 {OCCTL_TEXT_INFO_VERSION_1, \
153 {{0.0, 0.0, 0.0}, {0.0, 0.0, 1.0}, {1.0, 0.0, 0.0}}, \
157 OCCTL_TEXT_FONT_ASPECT_REGULAR, \
159 OCCTL_TEXT_HALIGN_LEFT, \
160 OCCTL_TEXT_VALIGN_BASELINE}
162#define OCCTL_TEXT_LAYOUT_OPTIONS_INIT {OCCTL_TEXT_LAYOUT_OPTIONS_VERSION_1, NULL, 0.0, 1}
164#define OCCTL_TEXT_METRICS_INIT \
165 {OCCTL_TEXT_METRICS_VERSION_1, NULL, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0}
OCCT-Light: core public API.
#define OCCTL_API
Definition occtl_core.h:111
enum occtl_status occtl_status_t
OCCT-Light: geometry primitive types and math utilities.
struct occtl_text_metrics occtl_text_metrics_t
void occtl_text_layout_options_init(occtl_text_layout_options_t *options)
occtl_status_t occtl_text_make_wires(occtl_graph_t *graph, const occtl_text_info_t *info, occtl_node_id_t *out_compound)
enum occtl_text_font_aspect occtl_text_font_aspect_t
occtl_status_t occtl_text_make_faces(occtl_graph_t *graph, const occtl_text_info_t *info, occtl_node_id_t *out_compound)
void occtl_text_metrics_init(occtl_text_metrics_t *metrics)
occtl_text_halign
Definition occtl_text.h:63
@ OCCTL_TEXT_HALIGN_LEFT
Definition occtl_text.h:64
struct occtl_text_layout_options occtl_text_layout_options_t
void occtl_text_info_init(occtl_text_info_t *info)
occtl_text_valign
Definition occtl_text.h:74
@ OCCTL_TEXT_VALIGN_BASELINE
Definition occtl_text.h:76
occtl_status_t occtl_text_measure(const occtl_text_info_t *info, occtl_text_metrics_t *out_metrics)
enum occtl_text_valign occtl_text_valign_t
struct occtl_text_info occtl_text_info_t
enum occtl_text_halign occtl_text_halign_t
occtl_text_font_aspect
Definition occtl_text.h:51
@ OCCTL_TEXT_FONT_ASPECT_REGULAR
Definition occtl_text.h:52
OCCT-Light: topology module public API.
struct occtl_graph occtl_graph_t
Definition occtl_topo_types.h:152
Definition occtl_geom.h:128
Definition occtl_topo_types.h:50
Definition occtl_text.h:97
const void * p_next
Definition occtl_text.h:99
uint32_t struct_version
Definition occtl_text.h:98
const char * font_path
Definition occtl_text.h:105
occtl_text_font_aspect_t font_aspect
Definition occtl_text.h:106
occtl_text_valign_t vertical_align
Definition occtl_text.h:109
occtl_text_halign_t horizontal_align
Definition occtl_text.h:108
double height
Definition occtl_text.h:107
occtl_axis2_placement_t placement
Definition occtl_text.h:100
const char * utf8_text
Definition occtl_text.h:101
const char * font_family
Definition occtl_text.h:103
Definition occtl_text.h:119
uint32_t struct_version
Definition occtl_text.h:120
const void * p_next
Definition occtl_text.h:121
int32_t word_wrapping
Definition occtl_text.h:123
double wrapping_width
Definition occtl_text.h:122
Definition occtl_text.h:135
double bottom
Definition occtl_text.h:142
double line_spacing
Definition occtl_text.h:146
const void * p_next
Definition occtl_text.h:137
uint32_t struct_version
Definition occtl_text.h:136
double max_symbol_width
Definition occtl_text.h:147
double ascender
Definition occtl_text.h:144
double width
Definition occtl_text.h:138
double top
Definition occtl_text.h:143
double left
Definition occtl_text.h:140
double height
Definition occtl_text.h:139
double descender
Definition occtl_text.h:145
double right
Definition occtl_text.h:141