Photon 1.0.0
Loading...
Searching...
No Matches
container_cairo_pango Class Reference

#include <container_cairo_pango.h>

Inheritance diagram for container_cairo_pango:
container_cairo litehtml::document_container html2png::container

Public Member Functions

 container_cairo_pango ()
 
 ~container_cairo_pango () override
 
litehtml::uint_ptr create_font (const char *faceName, int size, int weight, litehtml::font_style italic, unsigned int decoration, litehtml::font_metrics *fm) override
 
void delete_font (litehtml::uint_ptr hFont) override
 
int text_width (const char *text, litehtml::uint_ptr hFont) override
 
void draw_text (litehtml::uint_ptr hdc, const char *text, litehtml::uint_ptr hFont, litehtml::web_color color, const litehtml::position &pos) override
 
virtual cairo_font_options_t * get_font_options ()
 
- Public Member Functions inherited from container_cairo
 container_cairo ()=default
 
virtual ~container_cairo ()=default
 
int pt_to_px (int pt) const override
 
int get_default_font_size () const override
 
const char * get_default_font_name () const override
 
void get_image_size (const char *src, const char *baseurl, litehtml::size &sz) override
 
void draw_image (litehtml::uint_ptr hdc, const litehtml::background_layer &layer, const std::string &url, const std::string &base_url) override
 
void draw_solid_fill (litehtml::uint_ptr hdc, const litehtml::background_layer &layer, const litehtml::web_color &color) override
 
void draw_linear_gradient (litehtml::uint_ptr hdc, const litehtml::background_layer &layer, const litehtml::background_layer::linear_gradient &gradient) override
 
void draw_radial_gradient (litehtml::uint_ptr hdc, const litehtml::background_layer &layer, const litehtml::background_layer::radial_gradient &gradient) override
 
void draw_conic_gradient (litehtml::uint_ptr hdc, const litehtml::background_layer &layer, const litehtml::background_layer::conic_gradient &gradient) override
 
void draw_borders (litehtml::uint_ptr hdc, const litehtml::borders &borders, const litehtml::position &draw_pos, bool root) override
 
void draw_list_marker (litehtml::uint_ptr hdc, const litehtml::list_marker &marker) override
 
std::shared_ptr< litehtml::elementcreate_element (const char *tag_name, const litehtml::string_map &attributes, const std::shared_ptr< litehtml::document > &doc) override
 
void get_media_features (litehtml::media_features &media) const override
 
void get_language (litehtml::string &language, litehtml::string &culture) const override
 
void link (const std::shared_ptr< litehtml::document > &ptr, const litehtml::element::ptr &el) override
 
void transform_text (litehtml::string &text, litehtml::text_transform tt) override
 
void set_clip (const litehtml::position &pos, const litehtml::border_radiuses &bdr_radius) override
 
void del_clip () override
 
virtual void make_url (const char *url, const char *basepath, litehtml::string &out)
 
virtual cairo_surface_t * get_image (const std::string &url)=0
 
virtual double get_screen_dpi () const =0
 
virtual int get_screen_width () const =0
 
virtual int get_screen_height () const =0
 
void clear_images ()
 
- Public Member Functions inherited from litehtml::document_container
virtual void load_image (const char *src, const char *baseurl, bool redraw_on_ready)=0
 
virtual void set_caption (const char *caption)=0
 
virtual void set_base_url (const char *base_url)=0
 
virtual void link (const std::shared_ptr< litehtml::document > &doc, const litehtml::element::ptr &el)=0
 
virtual void on_anchor_click (const char *url, const litehtml::element::ptr &el)=0
 
virtual void on_mouse_event (const litehtml::element::ptr &el, litehtml::mouse_event event)=0
 
virtual void set_cursor (const char *cursor)=0
 
virtual void import_css (litehtml::string &text, const litehtml::string &url, litehtml::string &baseurl)=0
 
virtual void get_client_rect (litehtml::position &client) const =0
 
virtual litehtml::element::ptr create_element (const char *tag_name, const litehtml::string_map &attributes, const std::shared_ptr< litehtml::document > &doc)=0
 
virtual litehtml::string resolve_color (const litehtml::string &) const
 
virtual void split_text (const char *text, const std::function< void(const char *)> &on_word, const std::function< void(const char *)> &on_space)
 

Private Attributes

cairo_surface_t * m_temp_surface
 
cairo_t * m_temp_cr
 
std::set< std::string > m_all_fonts
 

Additional Inherited Members

- Protected Member Functions inherited from container_cairo
virtual void draw_ellipse (cairo_t *cr, int x, int y, int width, int height, const litehtml::web_color &color, int line_width)
 
virtual void fill_ellipse (cairo_t *cr, int x, int y, int width, int height, const litehtml::web_color &color)
 
virtual void rounded_rectangle (cairo_t *cr, const litehtml::position &pos, const litehtml::border_radiuses &radius)
 
void clip_background_layer (cairo_t *cr, const litehtml::background_layer &layer)
 
void apply_clip (cairo_t *cr)
 
- Protected Member Functions inherited from litehtml::document_container
virtual ~document_container ()=default
 
- Static Protected Member Functions inherited from container_cairo
static void set_color (cairo_t *cr, const litehtml::web_color &color)
 
- Protected Attributes inherited from container_cairo
cairo_clip_box::vector m_clips
 

Constructor & Destructor Documentation

◆ container_cairo_pango()

container_cairo_pango::container_cairo_pango ( )

◆ ~container_cairo_pango()

container_cairo_pango::~container_cairo_pango ( )
override

Member Function Documentation

◆ create_font()

litehtml::uint_ptr container_cairo_pango::create_font ( const char *  faceName,
int  size,
int  weight,
litehtml::font_style  italic,
unsigned int  decoration,
litehtml::font_metrics fm 
)
overridevirtual

◆ delete_font()

void container_cairo_pango::delete_font ( litehtml::uint_ptr  hFont)
overridevirtual

◆ draw_text()

void container_cairo_pango::draw_text ( litehtml::uint_ptr  hdc,
const char *  text,
litehtml::uint_ptr  hFont,
litehtml::web_color  color,
const litehtml::position pos 
)
overridevirtual

◆ get_font_options()

virtual cairo_font_options_t * container_cairo_pango::get_font_options ( )
inlinevirtual

Reimplemented in html2png::container.

◆ text_width()

int container_cairo_pango::text_width ( const char *  text,
litehtml::uint_ptr  hFont 
)
overridevirtual

Member Data Documentation

◆ m_all_fonts

std::set<std::string> container_cairo_pango::m_all_fonts
private

◆ m_temp_cr

cairo_t* container_cairo_pango::m_temp_cr
private

◆ m_temp_surface

cairo_surface_t* container_cairo_pango::m_temp_surface
private

The documentation for this class was generated from the following files: