| #pragma once |
| |
| #ifndef IWA_TEXTFX_H |
| #define IWA_TEXTFX_H |
| |
| #include "tparamset.h" |
| #include "textawarebasefx.h" |
| |
| |
| |
| |
| |
| class Iwa_TextFx final : public TextAwareBaseFx { |
| FX_PLUGIN_DECLARATION(Iwa_TextFx) |
| protected: |
| TStringParamP m_text; |
| |
| TIntEnumParamP m_hAlign; |
| |
| TPointParamP m_center; |
| TDoubleParamP m_width; |
| TDoubleParamP m_height; |
| |
| TFontParamP m_font; |
| TPixelParamP m_textColor; |
| TPixelParamP m_boxColor; |
| TBoolParamP m_showBorder; |
| |
| template <typename RASTER, typename PIXEL> |
| void putTextImage(const RASTER srcRas, TPoint &pos, QImage &img); |
| |
| public: |
| Iwa_TextFx(); |
| |
| bool canHandle(const TRenderSettings &info, double frame) override { |
| return true; |
| } |
| |
| bool doGetBBox(double frame, TRectD &bBox, |
| const TRenderSettings &ri) override; |
| void doCompute(TTile &tile, double frame, const TRenderSettings &ri) override; |
| void getParamUIs(TParamUIConcept *&concepts, int &length) override; |
| |
| std::string getAlias(double frame, |
| const TRenderSettings &info) const override; |
| }; |
| #endif |