From 364c97e3a055201af18e70f951dd0f0de26044af Mon Sep 17 00:00:00 2001 From: houxiao <houxiao@454eff88-639b-444f-9e54-f578c98de674> Date: 星期一, 24 七月 2017 10:26:36 +0800 Subject: [PATCH] update native --- RtspFace/PL_Paint.h | 44 ++++++++++++++++++++++++-------------------- 1 files changed, 24 insertions(+), 20 deletions(-) diff --git a/RtspFace/PL_Paint.h b/RtspFace/PL_Paint.h index 9e7edab..66ada4c 100644 --- a/RtspFace/PL_Paint.h +++ b/RtspFace/PL_Paint.h @@ -4,6 +4,8 @@ #include "PipeLine.h" #include "GraphicHelper.h" +#define ENABLE_WTEXT + /* PLPaint Language: COLOR F/B,R,G,B,A @@ -22,7 +24,8 @@ PLPLC_PEN, PLPLC_RECT, PLPLC_TEXT, - + PLPLC_WTEXT, + PLPLC__LAST }; @@ -30,16 +33,13 @@ { int val_i; float val_f; - char val_s[sizeof(int)]; + char val_s[20]; - PLPLType() : val_i(0) {} - PLPLType(int _val_i) : val_i(_val_i) {} - PLPLType(float _val_f) : val_f(_val_f) {} - PLPLType(const char* _val_s) - { - for (int i = 0; i < sizeof(val_s); i++) - val_s[i] = _val_s[i]; - } + PLPLType() : val_i(0) {} + PLPLType(int _val_i) : val_i(_val_i) {} + PLPLType(float _val_f) : val_f(_val_f) {} + PLPLType(const char* _val_s); + PLPLType(const wchar_t* _val_s); }; typedef std::vector<PLPLCmd> plplc_vec_t; @@ -50,23 +50,27 @@ plplc_vec_t cmds; plplt_vec_t params; - PLGH_Color_RGBA color_front; - PLGH_Color_RGBA color_back; - int fill; - PLGH_Pen pen; + PLGH_Color_RGBA color_front; + PLGH_Color_RGBA color_back; + int fill; + PLGH_Pen pen; + void* cvxText; - PLPLContext() : - cmds(), params(), color_front(), color_back(), fill(0), pen(0, 0) - {} + PLPLContext() : + cmds(), params(), color_front(), color_back(), fill(0), pen(0, 0), cvxText(nullptr) + {} + + ~PLPLContext(); }; struct PL_Paint_Config { bool copyData; PLPLContext* plplCtx; + std::string fontPath; PL_Paint_Config() : - copyData(false), plplCtx(nullptr) + copyData(false), plplCtx(nullptr), fontPath() { } }; @@ -83,8 +87,8 @@ virtual bool gain(PipeMaterial& pm); private: - static bool pay_breaker_MBFT_YUV(const PipeMaterial* pm, void* args); - + static bool pay_breaker_MBFT(const PipeMaterial* pm, void* args); + private: void* internal; }; -- Gitblit v1.8.0