svc_fontI.h 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef NULLSOFT_WASABI_SVC_FONTI_H
  2. #define NULLSOFT_WASABI_SVC_FONTI_H
  3. #include <api/service/svcs/svc_font.h>
  4. //#include <tataki/canvas/canvas.h>
  5. class ifc_canvas;
  6. // implementor derives from this one
  7. class NOVTABLE svc_fontI : public svc_font {
  8. public:
  9. virtual void textOut(ifc_canvas *c, int x, int y, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0; // abstract interface
  10. virtual void textOut2(ifc_canvas *c, int x, int y, int w, int h, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, int align, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0;
  11. virtual void textOutEllipsed(ifc_canvas *c, int x, int y, int w, int h, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, int align, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0;
  12. virtual void textOutWrapped(ifc_canvas *c, int x, int y, int w, int h, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, int align, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0;
  13. virtual void textOutWrappedPathed(ifc_canvas *c, int x, int y, int w, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, int align, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0;
  14. virtual void textOutCentered(ifc_canvas *c, RECT *r, const wchar_t *txt, int size, int bold, int opaque, int underline, int italic, int align, ARGB32 color, ARGB32 bkcolor, int xoffset, int yoffset, int antialias)=0;
  15. virtual int getTextWidth(ifc_canvas *c, const wchar_t *text, int size, int bold, int underline, int italic, int antialias)=0;
  16. virtual int getTextHeight(ifc_canvas *c, const wchar_t *text, int size, int bold, int underline, int italic, int antialias)=0;
  17. virtual int getTextHeight2(ifc_canvas *c, int size, int bold, int underline, int italic, int antialias)=0;
  18. virtual void getTextExtent(ifc_canvas *c, const wchar_t *text, int *w, int *h, int size, int bold, int underline, int italic, int antialias)=0;
  19. virtual void setFontId(const wchar_t *id)=0;
  20. virtual const wchar_t *getFontId()=0;
  21. virtual const wchar_t *getFaceName()=0;
  22. virtual int isBitmap()=0;
  23. virtual int getScriptId()=0;
  24. virtual void setScriptId(int id)=0;
  25. virtual void setFontFace(const wchar_t *face)=0;
  26. virtual int addFontResource(OSFILETYPE f, const wchar_t *name)=0;
  27. virtual int addFontResource2(void *mem, int datalen, const wchar_t *name)=0;
  28. virtual const wchar_t * getFontSvcName()=0;
  29. protected:
  30. RECVS_DISPATCH;
  31. };
  32. #endif