14#include <cairo-win32.h>
19 typedef std::vector<linked_font*>
vector;
28 typedef std::vector<text_chunk*>
vector;
73 void show_text(cairo_t* cr,
int x,
int y,
const char*);
94 EnterCriticalSection(&
m_sync);
99 LeaveCriticalSection(&
m_sync);
104 int int_val = (int) val;
105 if(val - int_val >= 0.5)
Definition cairo_font.h:43
int x_height
Definition cairo_font.h:47
int descent
Definition cairo_font.h:46
int ascent
Definition cairo_font.h:45
int height
Definition cairo_font.h:44
Definition container_cairo_pango.h:12
cairo_font_metrics & metrics()
Definition cairo_font.h:112
bool underline
Definition container_cairo_pango.h:15
DWORD m_font_code_pages
Definition cairo_font.h:56
int text_width(cairo_t *cr, const char *str)
Definition cairo_font.cpp:242
void get_metrics(cairo_t *cr, cairo_font_metrics *fm)
Definition cairo_font.cpp:277
BOOL m_bUnderline
Definition cairo_font.h:59
int round_d(double val)
Definition cairo_font.h:102
bool strikeout
Definition container_cairo_pango.h:16
int m_size
Definition cairo_font.h:58
void load_metrics(cairo_t *cr)
Definition cairo_font.h:117
static std::string wchar_to_utf8(const std::wstring &src)
Definition cairo_font.cpp:364
void unlock()
Definition cairo_font.h:97
void clear()
Definition cairo_font.cpp:315
int size
Definition container_cairo_pango.h:14
static CRITICAL_SECTION m_sync
Definition cairo_font.h:65
void free_text_chunks(text_chunk::vector &chunks)
Definition cairo_font.cpp:226
linked_font::vector m_linked_fonts
Definition cairo_font.h:57
cairo_font_face_t * create_font_face(HFONT fnt)
Definition cairo_font.cpp:235
HFONT m_hFont
Definition cairo_font.h:53
BOOL m_bStrikeOut
Definition cairo_font.h:60
void split_text(const char *str, text_chunk::vector &chunks)
Definition cairo_font.cpp:140
void set_font(HFONT hFont)
Definition cairo_font.cpp:295
void init()
Definition cairo_font.cpp:341
cairo_font_face_t * m_font_face
Definition cairo_font.h:54
cairo_font_metrics m_metrics
Definition cairo_font.h:61
IMLangFontLink2 * m_font_link
Definition cairo_font.h:55
void lock()
Definition cairo_font.h:92
static std::wstring utf8_to_wchar(const std::string &src)
Definition cairo_font.cpp:352
~cairo_font()
Definition cairo_font.cpp:61
void show_text(cairo_t *cr, int x, int y, const char *)
Definition cairo_font.cpp:89
Definition cairo_font.h:18
cairo_font_face_t * font_face
Definition cairo_font.h:23
DWORD code_pages
Definition cairo_font.h:21
HFONT hFont
Definition cairo_font.h:22
std::vector< linked_font * > vector
Definition cairo_font.h:19
Definition cairo_font.h:27
std::vector< text_chunk * > vector
Definition cairo_font.h:28
char * text
Definition cairo_font.h:30
~text_chunk()
Definition cairo_font.h:33
linked_font * font
Definition cairo_font.h:31