HiEasyX  Ver 0.3.0
EasyX 全面扩展库
HiEasyX::ImageBlock类 参考

图像块 更多...

#include <HiCanvas.h>

Public 成员函数

 ImageBlock ()
 
 ImageBlock (Canvas *pCanvas)
 
 ImageBlock (int _x, int _y, Canvas *pCanvas)
 
 ImageBlock (int _x, int _y, int w, int h, COLORREF cBk=0)
 新建画布 更多...
 
virtual ~ImageBlock ()
 
CanvasCreateCanvas (int w, int h, COLORREF cBk=0)
 不绑定外部画布,直接新建画布 更多...
 
CanvasGetCanvas () const
 
void SetCanvas (Canvas *pCanvas)
 
int GetWidth () const
 
int GetHeight () const
 
POINT GetPos () const
 
void SetPos (int _x, int _y)
 
virtual void Render (IMAGE *pImg, BYTE _alpha)
 绘制到画布 更多...
 

Public 属性

int x = 0
 
int y = 0
 图像显示在图层的位置 更多...
 
RECT rctCrop = { 0 }
 裁剪信息 更多...
 
bool bUseSrcAlpha = false
 是否使用图像自身的 alpha 数据 更多...
 
bool isAlphaCalculated = false
 图像色值是否已混合透明度(使用自身透明度时有效) 更多...
 
BYTE alpha = 255
 绘制到图层时的叠加透明度 更多...
 
bool bVisible = true
 图像是否可见 更多...
 

详细描述

图像块

在文件 HiCanvas.h771 行定义.

构造及析构函数说明

◆ ImageBlock() [1/4]

HiEasyX::ImageBlock::ImageBlock ( )

在文件 HiCanvas.cpp1852 行定义.

1853  {
1854  }

◆ ImageBlock() [2/4]

HiEasyX::ImageBlock::ImageBlock ( Canvas pCanvas)

在文件 HiCanvas.cpp1856 行定义.

1857  {
1858  SetCanvas(pCanvas);
1859  }

◆ ImageBlock() [3/4]

HiEasyX::ImageBlock::ImageBlock ( int  _x,
int  _y,
Canvas pCanvas 
)

在文件 HiCanvas.cpp1861 行定义.

1862  {
1863  x = _x;
1864  y = _y;
1865  SetCanvas(pCanvas);
1866  }

◆ ImageBlock() [4/4]

HiEasyX::ImageBlock::ImageBlock ( int  _x,
int  _y,
int  w,
int  h,
COLORREF  cBk = 0 
)

新建画布

参数
[in]_x位置
[in]_y位置
[in]w宽度
[in]h高度
[in]cBk背景色

在文件 HiCanvas.cpp1868 行定义.

1869  {
1870  x = _x;
1871  y = _y;
1872  CreateCanvas(w, h, cBk);
1873  }

◆ ~ImageBlock()

HiEasyX::ImageBlock::~ImageBlock ( )
virtual

在文件 HiCanvas.cpp1875 行定义.

1876  {
1877  DeleteMyCanvas();
1878  }

成员函数说明

◆ CreateCanvas()

Canvas * HiEasyX::ImageBlock::CreateCanvas ( int  w,
int  h,
COLORREF  cBk = 0 
)

不绑定外部画布,直接新建画布

参数
[in]w宽度
[in]h高度
[in]cBk背景色
返回
画布

在文件 HiCanvas.cpp1880 行定义.

1881  {
1882  if (m_isCreated)
1883  {
1884  m_pCanvas->Resize(w, h);
1885  m_pCanvas->Clear(cBk);
1886  }
1887  else
1888  {
1889  m_pCanvas = new Canvas(w, h, cBk);
1890  }
1891 
1892  return m_pCanvas;
1893  }

◆ GetCanvas()

Canvas* HiEasyX::ImageBlock::GetCanvas ( ) const
inline

在文件 HiCanvas.h816 行定义.

816 { return m_pCanvas; }

◆ GetHeight()

int HiEasyX::ImageBlock::GetHeight ( ) const
inline

在文件 HiCanvas.h820 行定义.

820 { return m_pCanvas ? m_pCanvas->GetHeight() : 0; }

◆ GetPos()

POINT HiEasyX::ImageBlock::GetPos ( ) const
inline

在文件 HiCanvas.h821 行定义.

821 { return { x,y }; }

◆ GetWidth()

int HiEasyX::ImageBlock::GetWidth ( ) const
inline

在文件 HiCanvas.h819 行定义.

819 { return m_pCanvas ? m_pCanvas->GetWidth() : 0; }

◆ Render()

void HiEasyX::ImageBlock::Render ( IMAGE *  pImg,
BYTE  _alpha 
)
virtual

绘制到画布

参数
[in]pImg目标绘制画布
[in]_alpha叠加透明度

在文件 HiCanvas.cpp1907 行定义.

1908  {
1909  if (m_pCanvas)
1910  {
1911  m_pCanvas->RenderTo(
1912  x, y,
1913  pImg,
1914  rctCrop,
1915  (BYTE)(alpha * (_alpha == 255 ? 1 : _alpha / 255.0f)),
1917  );
1918  }
1919  }

◆ SetCanvas()

void HiEasyX::ImageBlock::SetCanvas ( Canvas pCanvas)

在文件 HiCanvas.cpp1895 行定义.

1896  {
1897  DeleteMyCanvas();
1898  m_pCanvas = pCanvas;
1899  }

◆ SetPos()

void HiEasyX::ImageBlock::SetPos ( int  _x,
int  _y 
)

在文件 HiCanvas.cpp1901 行定义.

1902  {
1903  x = _x;
1904  y = _y;
1905  }

类成员变量说明

◆ alpha

BYTE HiEasyX::ImageBlock::alpha = 255

绘制到图层时的叠加透明度

在文件 HiCanvas.h786 行定义.

◆ bUseSrcAlpha

bool HiEasyX::ImageBlock::bUseSrcAlpha = false

是否使用图像自身的 alpha 数据

在文件 HiCanvas.h782 行定义.

◆ bVisible

bool HiEasyX::ImageBlock::bVisible = true

图像是否可见

在文件 HiCanvas.h787 行定义.

◆ isAlphaCalculated

bool HiEasyX::ImageBlock::isAlphaCalculated = false

图像色值是否已混合透明度(使用自身透明度时有效)

在文件 HiCanvas.h784 行定义.

◆ rctCrop

RECT HiEasyX::ImageBlock::rctCrop = { 0 }

裁剪信息

在文件 HiCanvas.h781 行定义.

◆ x

int HiEasyX::ImageBlock::x = 0

在文件 HiCanvas.h780 行定义.

◆ y

int HiEasyX::ImageBlock::y = 0

图像显示在图层的位置

在文件 HiCanvas.h780 行定义.


该类的文档由以下文件生成:
HiEasyX::Canvas::GetHeight
int GetHeight() const
Definition: HiCanvas.h:282
HiEasyX::Canvas::Resize
void Resize(int w, int h) override
重设画布大小(若绑定了窗口,则不建议调用)
Definition: HiCanvas.cpp:366
HiEasyX::ImageBlock::x
int x
Definition: HiCanvas.h:780
HiEasyX::ImageBlock::CreateCanvas
Canvas * CreateCanvas(int w, int h, COLORREF cBk=0)
不绑定外部画布,直接新建画布
Definition: HiCanvas.cpp:1880
HiEasyX::ImageBlock::SetCanvas
void SetCanvas(Canvas *pCanvas)
Definition: HiCanvas.cpp:1895
HiEasyX::Canvas::RenderTo
void RenderTo(int x, int y, IMAGE *pImg=nullptr, RECT crop={ 0 }, BYTE alpha=255, bool bUseSrcAlpha=false, bool isCalculated=false)
将该画布的图像绘制到另一画布中
Definition: HiCanvas.cpp:435
HiEasyX::Canvas::Clear
void Clear(bool isSetColor=false, COLORREF bkcolor=BLACK)
Definition: HiCanvas.cpp:465
HiEasyX::ImageBlock::alpha
BYTE alpha
绘制到图层时的叠加透明度
Definition: HiCanvas.h:786
HiEasyX::ImageBlock::rctCrop
RECT rctCrop
裁剪信息
Definition: HiCanvas.h:781
HiEasyX::Canvas::GetWidth
int GetWidth() const
Definition: HiCanvas.h:281
HiEasyX::ImageBlock::y
int y
图像显示在图层的位置
Definition: HiCanvas.h:780
HiEasyX::ImageBlock::bUseSrcAlpha
bool bUseSrcAlpha
是否使用图像自身的 alpha 数据
Definition: HiCanvas.h:782
HiEasyX::ImageBlock::isAlphaCalculated
bool isAlphaCalculated
图像色值是否已混合透明度(使用自身透明度时有效)
Definition: HiCanvas.h:784