Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CPrinterCalNumPage.hpp
Go to the documentation of this file.
1#ifndef LIBS_CAIRO_CPRINTERCALNUMPAGE_HPP_
2#define LIBS_CAIRO_CPRINTERCALNUMPAGE_HPP_
3
5#include "core/IPrinter.hpp"
6
7#include <cairo/cairo.h>
8#include <pango/pango-layout.h>
9
11{
12public:
14 CPrinterCalNumPage(const CPrinterCalNumPage &other) = delete;
17 explicit CPrinterCalNumPage(std::string pathDocumentCairo);
18
19 void beginDocument(uint64_t sizeXPage, uint64_t sizeYPage) override;
20 void beginPage() override;
21 void endDocument() override;
22 void endPage(uint64_t *numPage) override;
23 void moveTo(double posX, double posY) override;
24 void relativeMoveTo(int32_t positionX, int32_t positionY) override;
25
26 void saveDocument(const std::string &titleDoc) override;
27
28 void showLayout() override;
29
30 void drawImage(CGeoCanvas *geo, double posX, double posY, double sizeX, double sizeY,
31 iv::types::color colorBackground) override;
32
33 void drawImagePng(std::string_view nameImage, double posX, double posY, int32_t sizeY) override;
34 void drawLine(double x1, double y1, double x2, double y2) override;
35 void drawRectangle(double x1, double y1, double x2, double y2) override;
36 void drawRectangleFilled(double x1, double y1, double x2, double y2) override;
37
38 uint64_t getNumTotalPages() override;
39 void getTextSize(int32_t *widthText, int32_t *heightText) override;
40
41 void setAlignment(iv::eFontAlignment fontAlignment) override;
42 void setColorRGB(uint32_t rgb) override;
43 void setFont(const std::string &fontName, iv::eFontSlant fontSlant, iv::eFontWeight fontWeight,
44 uint64_t fontHeight) override;
45 void setIndent(int64_t indentFirstLineDP) override;
46 void setSpacing(uint64_t fontHeight, double spacingBetweenLines) override;
47 void setText(std::string_view textParagraph) override;
48 void setWidth(uint64_t width) override;
49
50private:
52
53 cairo_surface_t *m_surfaceOpt;
54 cairo_t *m_cairoOpt;
55 PangoLayout *m_layoutOpt;
56
58};
59
60#endif /* LIBS_CAIRO_CPRINTERCALNUMPAGE_HPP_ */
Definition CGeoCanvas.hpp:13
Definition CPrinterCalNumPage.hpp:11
CPrinterCalNumPage(const CPrinterCalNumPage &other)=delete
void relativeMoveTo(int32_t positionX, int32_t positionY) override
Definition CPrinterCalNumPage.cpp:119
void endDocument() override
Definition CPrinterCalNumPage.cpp:99
void setIndent(int64_t indentFirstLineDP) override
Definition CPrinterCalNumPage.cpp:221
void endPage(uint64_t *numPage) override
Definition CPrinterCalNumPage.cpp:109
void getTextSize(int32_t *widthText, int32_t *heightText) override
Definition CPrinterCalNumPage.cpp:159
CPrinterCalNumPage(CPrinterCalNumPage &&other)=delete
void drawRectangleFilled(double x1, double y1, double x2, double y2) override
Definition CPrinterCalNumPage.cpp:148
void saveDocument(const std::string &titleDoc) override
Definition CPrinterCalNumPage.cpp:123
~CPrinterCalNumPage() override
void beginPage() override
Definition CPrinterCalNumPage.cpp:92
void setText(std::string_view textParagraph) override
Definition CPrinterCalNumPage.cpp:239
void setAlignment(iv::eFontAlignment fontAlignment) override
Definition CPrinterCalNumPage.cpp:166
void setFont(const std::string &fontName, iv::eFontSlant fontSlant, iv::eFontWeight fontWeight, uint64_t fontHeight) override
Definition CPrinterCalNumPage.cpp:202
uint64_t getNumTotalPages() override
Definition CPrinterCalNumPage.cpp:152
std::string m_pathDocumentCairo
Definition CPrinterCalNumPage.hpp:51
PangoLayout * m_layoutOpt
Definition CPrinterCalNumPage.hpp:55
void drawImagePng(std::string_view nameImage, double posX, double posY, int32_t sizeY) override
Definition CPrinterCalNumPage.cpp:136
void setColorRGB(uint32_t rgb) override
Definition CPrinterCalNumPage.cpp:198
CPrinterCalNumPage()
Definition CPrinterCalNumPage.cpp:58
void showLayout() override
Definition CPrinterCalNumPage.cpp:127
void setWidth(uint64_t width) override
Definition CPrinterCalNumPage.cpp:249
cairo_t * m_cairoOpt
Definition CPrinterCalNumPage.hpp:54
void drawLine(double x1, double y1, double x2, double y2) override
Definition CPrinterCalNumPage.cpp:140
cairo_surface_t * m_surfaceOpt
Definition CPrinterCalNumPage.hpp:53
void moveTo(double posX, double posY) override
Definition CPrinterCalNumPage.cpp:115
uint64_t m_numPagesTotal
Definition CPrinterCalNumPage.hpp:57
void setSpacing(uint64_t fontHeight, double spacingBetweenLines) override
Definition CPrinterCalNumPage.cpp:228
void drawRectangle(double x1, double y1, double x2, double y2) override
Definition CPrinterCalNumPage.cpp:144
void drawImage(CGeoCanvas *geo, double posX, double posY, double sizeX, double sizeY, iv::types::color colorBackground) override
Definition CPrinterCalNumPage.cpp:131
void beginDocument(uint64_t sizeXPage, uint64_t sizeYPage) override
Definition CPrinterCalNumPage.cpp:77
Definition IPrinter.hpp:9
uint32_t color
Definition types.hpp:12
eFontWeight
Definition enums.hpp:87
eFontAlignment
Definition enums.hpp:72
eFontSlant
Definition enums.hpp:80