趣味で作ってるロボット用ソフトウェア
 All Classes Files Functions Enumerations Enumerator Friends Pages
Text_surface.h
Go to the documentation of this file.
1 #ifndef HRK_TEXT_SURFACE_H
2 #define HRK_TEXT_SURFACE_H
3 
9 #include <memory>
10 #include <string>
11 #include "Surface.h"
12 
13 
14 namespace hrk
15 {
16  class Font;
17 
19  class Text_surface : public Surface
20  {
21  public:
28  explicit Text_surface(const Font& font, const std::string& text);
29  ~Text_surface(void);
30 
31  SizeF size(void) const;
32  Color pixel_color(const PointF& point, double magnify) const;
33  void draw(const RectF* src, const RectF& dest,
34  double z, const Angle& rotate_angle, double magnify,
35  double color_strength_ratio, double alpha,
36  bool antialiasing) const;
37 
38  static SizeF expected_surface_size(const Font& font,
39  const std::string& text);
40 
41  private:
42  Text_surface(void);
43  Text_surface(const Text_surface& rhs);
44  Text_surface& operator = (const Text_surface& rhs);
45 
46  struct pImpl;
47  std::auto_ptr<pImpl> pimpl;
48  };
49 }
50 
51 #endif
Definition: Color.h:12
角度
Definition: Angle.h:13
SizeF size(void) const
サーフェスの幅と高さを返す
Definition: Text_surface.cpp:92
位置
Definition: PointF.h:12
Color pixel_color(const PointF &point, double magnify) const
指定された位置の色情報を返す
Definition: Text_surface.cpp:98
幅と高さ
Definition: SizeF.h:12
サーフェスのインターフェース定義
Definition: Surface.h:20
矩形
Definition: RectF.h:16
void draw(const RectF *src, const RectF &dest, double z, const Angle &rotate_angle, double magnify, double color_strength_ratio, double alpha, bool antialiasing) const
描画
Definition: Text_surface.cpp:104
フォント管理
Definition: Font.h:19
文字列の描画
Definition: Text_surface.h:19