Classes | |
class | ft_font |
Public Types | |
enum | { ROTATION_0 = 0 , ROTATION_90 = 1 , ROTATION_180 = 2 , ROTATION_270 = 3 } |
enum | { MODE_BBOX = 0 , MODE_RENDER = 1 } |
Private Member Functions | |
void | compute_bbox (void) |
int | compute_line_xoffset (const Matrix &lb) const |
FT_UInt | process_character (FT_ULong code, FT_UInt previous, std::string &sub_font) |
void | push_new_line (void) |
void | update_line_bbox (void) |
Private Attributes | |
bool | m_antialias |
Matrix | m_bbox |
uint8NDArray | m_color |
FT_Pos | m_deltax |
bool | m_do_strlist |
ft_font | m_font |
int | m_halign |
std::list< Matrix > | m_line_bbox |
int | m_line_xoffset |
int | m_line_yoffset |
double | m_max_fontsize |
int | m_mode |
uint8NDArray | m_pixels |
std::list< text_renderer::string > | m_strlist |
int | m_xoffset |
FT_Pos | m_ymax |
FT_Pos | m_ymin |
int | m_yoffset |
Definition at line 457 of file ft-text-renderer.cc.
|
inherited |
Enumerator | |
---|---|
ROTATION_0 | |
ROTATION_90 | |
ROTATION_180 | |
ROTATION_270 |
Definition at line 48 of file base-text-renderer.h.
anonymous enum |
Enumerator | |
---|---|
MODE_BBOX | |
MODE_RENDER |
Definition at line 463 of file ft-text-renderer.cc.
|
inline |
Definition at line 471 of file ft-text-renderer.cc.
|
delete |
|
default |
|
private |
Definition at line 730 of file ft-text-renderer.cc.
References Matrix::extract(), Array< T, Alloc >::isempty(), m_bbox, m_line_bbox, m_max_fontsize, Matrix, octave::math::max(), and octave::math::round().
Referenced by get_extent(), and render().
Definition at line 711 of file ft-text-renderer.cc.
References Array< T, Alloc >::isempty(), m_bbox, and m_halign.
Referenced by push_new_line(), and set_mode().
|
inherited |
Definition at line 109 of file base-text-renderer.cc.
References octave::base_text_renderer::ROTATION_180, octave::base_text_renderer::ROTATION_270, and octave::base_text_renderer::ROTATION_90.
Referenced by text_to_pixels(), and octave::latex_renderer::text_to_pixels().
|
inline |
Definition at line 511 of file ft-text-renderer.cc.
|
virtual |
Implements octave::base_text_renderer.
Definition at line 1443 of file ft-text-renderer.cc.
References get_extent(), and octave::text_parser::parse().
|
virtual |
Implements octave::base_text_renderer.
Definition at line 1417 of file ft-text-renderer.cc.
References octave::text_element::accept(), compute_bbox(), m_bbox, MODE_BBOX, octave::base_text_renderer::ROTATION_0, octave::base_text_renderer::ROTATION_180, octave::base_text_renderer::ROTATION_270, octave::base_text_renderer::ROTATION_90, octave::base_text_renderer::rotation_to_mode(), and set_mode().
Referenced by get_extent().
|
inline |
Definition at line 509 of file ft-text-renderer.cc.
|
virtual |
Implements octave::base_text_renderer.
Definition at line 663 of file ft-text-renderer.cc.
References octave::ft_manager::get_system_fonts().
|
inlinevirtualinherited |
Reimplemented in octave::latex_renderer.
Definition at line 81 of file base-text-renderer.h.
Referenced by octave::text_renderer::get_extent(), octave::text_renderer::text_to_pixels(), and octave::text_renderer::text_to_strlist().
|
delete |
|
private |
Definition at line 835 of file ft-text-renderer.cc.
References Array< T, Alloc >::dim2(), Array< T, Alloc >::dim3(), octave::math::floor(), octave::text_renderer::font::get_angle(), octave::ft_text_renderer::ft_font::get_face(), octave::ft_manager::get_font(), octave::text_renderer::font::get_name(), octave::text_renderer::font::get_size(), octave::text_renderer::font::get_weight(), octave::is_opaque(), m_antialias, m_color, m_deltax, m_font, m_line_bbox, m_line_yoffset, m_mode, m_pixels, m_xoffset, m_ymax, m_ymin, m_yoffset, octave::math::max(), octave::math::min(), MODE_BBOX, MODE_RENDER, process_character(), push_new_line(), update_line_bbox(), octave::warn_glyph_render(), octave::warn_missing_glyph(), and warning_with_id().
Referenced by process_character(), and visit().
|
private |
Definition at line 669 of file ft-text-renderer.cc.
References compute_line_xoffset(), octave::ft_text_renderer::ft_font::get_face(), m_deltax, m_font, m_line_bbox, m_line_xoffset, m_line_yoffset, m_max_fontsize, m_mode, m_xoffset, m_ymax, m_ymin, m_yoffset, MODE_BBOX, MODE_RENDER, and octave::math::round().
Referenced by process_character(), and set_mode().
uint8NDArray octave::ft_text_renderer::render | ( | text_element * | elt, |
Matrix & | box, | ||
int | rotation = ROTATION_0 |
||
) |
Definition at line 1392 of file ft-text-renderer.cc.
References octave::text_element::accept(), box(), compute_bbox(), m_bbox, m_pixels, MODE_BBOX, MODE_RENDER, Array< T, Alloc >::numel(), octave::base_text_renderer::rotate_pixels(), and set_mode().
Referenced by text_to_pixels().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1371 of file ft-text-renderer.cc.
References m_strlist, MODE_BBOX, set_color(), and set_mode().
|
inherited |
Definition at line 35 of file base-text-renderer.cc.
References Array< T, Alloc >::dim2(), Array< T, Alloc >::dim3(), Array< T, Alloc >::index(), MArray< T >::permute(), octave::base_text_renderer::ROTATION_0, octave::base_text_renderer::ROTATION_180, octave::base_text_renderer::ROTATION_270, and octave::base_text_renderer::ROTATION_90.
Referenced by render(), and octave::latex_renderer::text_to_pixels().
Definition at line 88 of file base-text-renderer.cc.
References octave::base_text_renderer::ROTATION_0, octave::base_text_renderer::ROTATION_180, octave::base_text_renderer::ROTATION_270, and octave::base_text_renderer::ROTATION_90.
Referenced by get_extent(), text_to_pixels(), and octave::latex_renderer::text_to_pixels().
|
inlinevirtual |
Implements octave::base_text_renderer.
Definition at line 520 of file ft-text-renderer.cc.
|
virtual |
Implements octave::base_text_renderer.
Definition at line 1379 of file ft-text-renderer.cc.
References m_color, Array< T, Alloc >::numel(), and warning().
|
virtual |
Implements octave::base_text_renderer.
Definition at line 654 of file ft-text-renderer.cc.
Referenced by visit().
void octave::ft_text_renderer::set_mode | ( | int | m | ) |
Definition at line 784 of file ft-text-renderer.cc.
References compute_line_xoffset(), d, error(), m_bbox, m_line_bbox, m_line_yoffset, m_max_fontsize, m_mode, m_pixels, m_xoffset, m_yoffset, Matrix, MODE_BBOX, MODE_RENDER, Array< T, Alloc >::numel(), and push_new_line().
Referenced by get_extent(), render(), and reset().
|
virtual |
Implements octave::base_text_renderer.
Definition at line 1454 of file ft-text-renderer.cc.
References box(), octave::base_text_renderer::fix_bbox_anchor(), Array< T, Alloc >::isempty(), m_halign, octave::text_parser::parse(), render(), and octave::base_text_renderer::rotation_to_mode().
Referenced by text_to_strlist().
|
virtual |
Implements octave::base_text_renderer.
Definition at line 1039 of file ft-text-renderer.cc.
References box(), m_do_strlist, m_strlist, and text_to_pixels().
|
private |
Definition at line 764 of file ft-text-renderer.cc.
References m_deltax, m_line_bbox, m_mode, m_ymax, m_ymin, and MODE_BBOX.
Referenced by process_character(), and visit().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1251 of file ft-text-renderer.cc.
References octave::text_element_color::get_color(), m_mode, MODE_RENDER, and set_color().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1355 of file ft-text-renderer.cc.
References m_xoffset, and octave::math::max().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1273 of file ft-text-renderer.cc.
References octave::text_renderer::font::get_angle(), octave::text_element_fontname::get_fontname(), octave::text_renderer::font::get_size(), octave::text_renderer::font::get_weight(), m_font, m_mode, MODE_BBOX, set_font(), and update_line_bbox().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1258 of file ft-text-renderer.cc.
References octave::text_renderer::font::get_angle(), octave::text_element_fontsize::get_fontsize(), octave::text_renderer::font::get_name(), octave::text_renderer::font::get_weight(), m_font, m_mode, MODE_BBOX, set_font(), and update_line_bbox().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1283 of file ft-text-renderer.cc.
References octave::text_element_fontstyle::bold, octave::text_element_fontstyle::get_fontstyle(), octave::text_renderer::font::get_name(), octave::text_renderer::font::get_size(), octave::text_element_fontstyle::italic, m_font, m_mode, MODE_BBOX, octave::text_element_fontstyle::normal, octave::text_element_fontstyle::oblique, set_font(), and update_line_bbox().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1175 of file ft-text-renderer.cc.
References m_color, m_font, and octave::text_processor::visit().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1063 of file ft-text-renderer.cc.
References octave::ft_text_renderer::ft_font::get_face(), octave::text_renderer::string::get_family(), octave::text_renderer::font::get_size(), octave::text_renderer::string::get_string(), octave::ft_text_renderer::ft_font::is_valid(), m_color, m_do_strlist, m_font, m_line_xoffset, m_line_yoffset, m_max_fontsize, m_mode, m_strlist, m_xoffset, m_yoffset, max(), MODE_RENDER, octave_u8_strmbtouc_wrapper(), process_character(), octave::text_renderer::string::set_color(), octave::text_renderer::string::set_family(), octave::text_renderer::string::set_string(), octave::text_renderer::string::set_xdata(), octave::text_renderer::string::set_y(), and octave::text_element_string::string_value().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1189 of file ft-text-renderer.cc.
References octave::math::ceil(), octave::text_renderer::font::get_angle(), octave::text_renderer::font::get_name(), octave::text_renderer::font::get_size(), octave::text_renderer::font::get_weight(), octave::ft_text_renderer::ft_font::is_valid(), m_font, m_line_yoffset, m_mode, m_yoffset, max(), MODE_BBOX, set_font(), update_line_bbox(), and octave::text_processor::visit().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1220 of file ft-text-renderer.cc.
References octave::math::ceil(), octave::text_renderer::font::get_angle(), octave::text_renderer::font::get_name(), octave::text_renderer::font::get_size(), octave::text_renderer::font::get_weight(), octave::ft_text_renderer::ft_font::is_valid(), m_font, m_line_yoffset, m_mode, m_yoffset, max(), MODE_BBOX, set_font(), update_line_bbox(), and octave::text_processor::visit().
|
virtual |
Reimplemented from octave::text_processor.
Definition at line 1309 of file ft-text-renderer.cc.
References octave::text_renderer::string::get_code(), octave::ft_text_renderer::ft_font::get_face(), octave::text_renderer::string::get_family(), octave::text_element_symbol::get_symbol(), octave::text_element_symbol::get_symbol_code(), octave::text_element_symbol::invalid_code, octave::ft_text_renderer::ft_font::is_valid(), m_color, m_do_strlist, m_font, m_line_yoffset, m_mode, m_strlist, m_xoffset, m_yoffset, MODE_RENDER, process_character(), octave::text_renderer::string::set_code(), octave::text_renderer::string::set_color(), octave::text_renderer::string::set_family(), octave::text_renderer::string::set_xdata(), octave::text_renderer::string::set_y(), and warning().
|
private |
Definition at line 649 of file ft-text-renderer.cc.
Referenced by process_character().
|
private |
Definition at line 601 of file ft-text-renderer.cc.
Referenced by compute_bbox(), compute_line_xoffset(), get_extent(), render(), and set_mode().
|
private |
Definition at line 629 of file ft-text-renderer.cc.
Referenced by process_character(), set_color(), and visit().
|
private |
Definition at line 643 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), and update_line_bbox().
|
private |
Definition at line 632 of file ft-text-renderer.cc.
Referenced by text_to_strlist(), and visit().
|
private |
Definition at line 594 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), set_font(), and visit().
|
private |
Definition at line 612 of file ft-text-renderer.cc.
Referenced by compute_line_xoffset(), and text_to_pixels().
|
private |
Definition at line 609 of file ft-text-renderer.cc.
Referenced by compute_bbox(), process_character(), push_new_line(), set_mode(), and update_line_bbox().
|
private |
Definition at line 636 of file ft-text-renderer.cc.
Referenced by push_new_line(), and visit().
|
private |
Definition at line 618 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), set_mode(), and visit().
|
private |
Definition at line 646 of file ft-text-renderer.cc.
Referenced by compute_bbox(), push_new_line(), set_mode(), and visit().
|
private |
Definition at line 626 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), set_mode(), update_line_bbox(), and visit().
|
private |
Definition at line 605 of file ft-text-renderer.cc.
Referenced by process_character(), render(), and set_mode().
|
private |
Definition at line 633 of file ft-text-renderer.cc.
Referenced by reset(), text_to_strlist(), and visit().
|
private |
Definition at line 615 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), set_mode(), and visit().
|
private |
Definition at line 640 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), and update_line_bbox().
|
private |
Definition at line 639 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), and update_line_bbox().
|
private |
Definition at line 623 of file ft-text-renderer.cc.
Referenced by process_character(), push_new_line(), set_mode(), and visit().