YSTest: YSLib::Drawing::Padding结构体 参考

YSTest PreAlpha_b700_20160611 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 类列表
- 类索引
- 类继承关系
- 类成员

Public 成员函数 | Public 属性 | 所有成员列表
YSLib::Drawing::Padding结构体 参考

空白样式。 更多...

`#include <YGDI.h>`

YSLib::Drawing::Padding 的协作图:
[图例]

## Public 成员函数

| DefDeCtor (Padding) explicit yconstfn Padding(SPos x)
| 默认构造：使用零边距。 更多...
yconstfn | Padding (SPos l, SPos r, SPos t, SPos b)
| 构造：使用 4 个边距。 更多...
| PDefHOp (Padding &,+=, const Padding &m) ImplRet(yunseq(Left+
| 加法赋值：对应分量调用 operator+= 。 更多...

## Public 属性

SPos | Left = 0
| 空白距离：左、右、上、下。 更多...
SPos | Right = 0
SPos | Top = 0
SPos | Bottom = 0
| Right = m.Right
| Top = m.Top

## 相关函数

(请注意: 这些不是成员函数.)
yconstfn x | Right
yconstfn x x | Top
yconstfn x x x Bottom yconstfn x Right y | Right
yconstfn x x x Bottom yconstfn x Right y x Top y | Top
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y | Right
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y | Top
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding | GetHorizontalOf
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding &m | GetVerticalOf
| DefSwap (ynothrow, CompactPixmap) class YF_API CompactPixmapEx
| 使用 8 位 Alpha 扩展的标准矩形像素图缓冲区。 更多...
const ConstGraphics const Size const Point const Point const Size | Rotation = RDeg0)
| src
dst | dp
dst | sp
dst src rot | src
dst src rot dst | dp
dst src rot dst | sp
#define | PDefHOp(_t, _op, ...) PDefH(_t, operator _op, __VA_ARGS__)
| 加法逆元：对应分量调用一元 operator- 。 更多...
#define | PDefHOp(_t, _op, ...) PDefH(_t, operator _op, __VA_ARGS__)
| 加法：对应分量调用 operator+ 。 更多...
#define | PDefHOp(_t, _op, ...) PDefH(_t, operator _op, __VA_ARGS__)
| 减法：对应分量调用 operator- 。 更多...
#define | PDefHOp(_t, _op, ...) PDefH(_t, operator _op, __VA_ARGS__)
| 乘法：对应分量调用 operator* 。 更多...
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn | SPos (x.Bottom *ptrdiff_t(n)))) YF_API Rect operator+(const Rect &
| 加法：缩小屏幕标准矩形，相对位置由指定边距决定。 更多...
#define | PDefHOp(_t, _op, ...) PDefH(_t, operator _op, __VA_ARGS__)
| 减法：放大屏幕标准矩形，相对位置由指定边距决定。 更多...
#define | ImplRet(...)
| 取竖直边距和。 更多...
#define | ImplRet(...)
| 取内边界相对外边界的边距。 更多...
#define | PDefH(_t, _n, ...)
| 剪切操作：取标准矩形交集并判断是否严格非空。 更多...
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding &m const Padding &m const Size!x | IsUnstrictlyEmpty ()) YF_API Point ClipBounds(Rect &
| 根据指定源的边界优化绘制上下文的剪切区域。 更多...
yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding &m const Padding &m const Size!x const Rect &YF_API Point | ClipMargin (PaintContext &, const Padding &, const Size &)
| 根据指定边距和源的大小优化绘制上下文的剪切区域。 更多...
#define | DefSwap(_q, _t)
| 图形接口上下文向指针指定的缓冲区复制。 更多...
YF_API bool | CopyTo (BitmapPtr, const CompactPixmapEx &, const Size &, const Point &, const Point &, const Size &, Rotation=RDeg0)
| 位图缓冲区向指针指定的缓冲区复制。 更多...
#define | PDefH(_t, _n, ...)
| 图形接口上下文复制。 更多...
#define | PDefH(_t, _n, ...)
| 位图缓冲区向图形接口上下文复制。 更多...
dst src rot dst src rot YF_API bool | BlitTo (BitmapPtr, const CompactPixmapEx &, const Size &, const Point &, const Point &, const Size &, Rotation=RDeg0)
| 贴图：位图缓冲区向指针指定的缓冲区以贴图算法复制。 更多...
#define | PDefH(_t, _n, ...)
| 贴图：位图缓冲区向指针指定的缓冲区以贴图算法复制。 更多...

## 详细描述

空白样式。

警告
  非虚析构。

在文件 YGDI.h 第 46 行定义.

## 构造及析构函数说明

yconstfn YSLib::Drawing::Padding::Padding | ( | SPos | l,
|  | SPos | r,
|  | SPos | t,
|  | SPos | b
| ) |  |

inline

构造：使用 4 个边距。

自从
  build 365

在文件 YGDI.h 第 72 行定义.

## 成员函数说明

YSLib::Drawing::Padding::DefDeCtor | ( | Padding |  | ) |

inline

默认构造：使用零边距。

自从
  build 365

构造：使用 4 个相同的边距。

自从
  build 586

在文件 YGDI.h 第 58 行定义.

YSLib::Drawing::Padding::PDefHOp | ( | Padding & | ,
|  | + | ,
|  | const Padding & | m
| ) |  |

加法赋值：对应分量调用 operator+= 。

## 友元及相关函数文档

dst src rot dst src rot YF_API bool BlitTo | ( | BitmapPtr | ,
|  | const CompactPixmapEx & | ,
|  | const Size & | ,
|  | const Point & | ,
|  | const Point & | ,
|  | const Size & | ,
|  | Rotation | = `RDeg0`
| ) |  |

related

贴图：位图缓冲区向指针指定的缓冲区以贴图算法复制。

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 418

向指定大小和点（相对左上角）的指定图形接口上下文以指定输出指向以缓冲区内容贴图。

在文件 YGDI.cpp 第 238 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding &m const Padding &m const Size!x const Rect &YF_API Point ClipMargin | ( | PaintContext & | ,
|  | const Padding & | ,
|  | const Size & |
| ) |  |

related

根据指定边距和源的大小优化绘制上下文的剪切区域。

返回
  若边距决定不足以被渲染则为 Point() ，否则为源的起始偏移位置。

注解
  当不需要绘制时，不修改偏移坐标。

自从
  build 369

检查边距限制下需要保留绘制的区域，结果保存至绘制上下文的除渲染目标外的其它成员。

在文件 YGDI.cpp 第 69 行定义.

YF_API bool CopyTo | ( | BitmapPtr | ,
|  | const CompactPixmapEx & | ,
|  | const Size & | ,
|  | const Point & | ,
|  | const Point & | ,
|  | const Size & | ,
|  | Rotation | = `RDeg0`
| ) |  |

related

位图缓冲区向指针指定的缓冲区复制。

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 418

向指定大小和点（相对左上角）的指定图形接口上下文以指定输出指向复制缓冲区内容。

在文件 YGDI.cpp 第 219 行定义.

YSLib::Drawing::Padding::DefSwap(ynothrow, CompactPixmap) class YF_API CompactPixmapEx

related

使用 8 位 Alpha 扩展的标准矩形像素图缓冲区。

自从
  build 630
  build 418

后置条件
  满足 `ystdex::is_nothrow_moveable<CompactPixmapEx>()` 。

注解
  保证像素数据和 Alpha 数据分别连续。

Alpha 缓冲区指针。

自从
  build 417

构造：使用指定位图指针和大小。

合一赋值：使用值参数和交换函数进行复制或转移赋值。

自从
  build 566

取 Alpha 缓冲区的指针。

自从
  build 417

取 Alpha 缓冲区占用空间。

自从
  build 407

重新设置缓冲区大小。

注解
  若有一边为零则删除缓冲区；若大于缓冲区空间则重新分配； 设置后清除缓冲区。

自从
  build 405

清除缓冲区。

自从
  build 630

在文件 YGDI.h 第 340 行定义.

#define DefSwap | ( |  | ynothrow,
|  |  | CompactPixmapEx
| ) |  |

related

值:
PDefH(void, swap, _t& _x, _t& _y) _q \
ImplExpr(_x.swap(_y))

图形接口上下文向指针指定的缓冲区复制。

自从
  build 418

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 559

以指定图形接口上下文作为源，向指定大小和点（相对左上角）的 指定图形接口上下文以指定输出指向复制缓冲区内容。

dst dp

related

在文件 YGDI.h 第 452 行定义.

dst src rot dst dp

related

在文件 YGDI.h 第 463 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding GetHorizontalOf

related

在文件 YGDI.h 第 153 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding& m GetVerticalOf

related

在文件 YGDI.h 第 159 行定义.

#define ImplRet | ( |  | SDst(max< SPos >(0, m.Left)+max< SPos >(0, m.Right)) | ) |

related

值:
{ \
return __VA_ARGS__; \
}

取竖直边距和。

#define ImplRet | ( |  | SDst(max< SPos >(0, m.Top)+max< SPos >(0, m.Bottom)) | ) | const

related

值:
{ \
return __VA_ARGS__; \
}

取内边界相对外边界的边距。

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn const Padding const Padding &m const Padding &m const Size!x IsUnstrictlyEmpty | ( |  | ) |

related

根据指定源的边界优化绘制上下文的剪切区域。

返回
  若边距决定不足以被渲染则为 Point() ，否则为源的起始偏移位置。

注解
  当不需要绘制时，不修改偏移坐标。

自从
  build 372

检查边距限制下需要保留绘制的区域，结果保存至绘制上下文的除渲染目标外的其它成员。

#define PDefH | ( |  | bool,
|  |  | Clip,
|  |  | Rect &x,
|  |  | const Rect &y
| ) |  |

related

值:
_t \
_n(__VA_ARGS__)

剪切操作：取标准矩形交集并判断是否严格非空。

自从
  build 372

#define PDefH | ( |  | bool,
|  |  | CopyTo,
|  |  | const Graphics &dst,
|  |  | const ConstGraphics &src,
|  |  | const Point &dp = `{}`,
|  |  | const Point &sp = `{}`,
|  |  | Rotation rot = `RDeg0`
| ) |  |

related

值:
_t \
_n(__VA_ARGS__)

图形接口上下文复制。

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 559

以第一个参数作为目标，以指定输出指向复制第二个参数的缓冲区内容 至相对目标缓冲区的点。

#define PDefH | ( |  | bool,
|  |  | CopyTo,
|  |  | const Graphics &dst,
|  |  | const CompactPixmapEx &src,
|  |  | const Point &dp = `{}`,
|  |  | const Point &sp = `{}`,
|  |  | Rotation rot = `RDeg0`
| ) |  |

related

值:
_t \
_n(__VA_ARGS__)

位图缓冲区向图形接口上下文复制。

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 418

向指定大小和点（相对左上角）的指定图形接口上下文以指定输出指向复制缓冲区内容。

#define PDefH | ( |  | bool,
|  |  | BlitTo,
|  |  | const Graphics &dst,
|  |  | const CompactPixmapEx &src,
|  |  | const Point &dp = `{}`,
|  |  | const Point &sp = `{}`,
|  |  | Rotation rot = `RDeg0`
| ) |  |

related

值:
_t \
_n(__VA_ARGS__)

贴图：位图缓冲区向指针指定的缓冲区以贴图算法复制。

注解
  仅当指针和指向有效。自动裁剪适应大小。

自从
  build 418

向指定大小和点（相对左上角）的指定图形接口上下文以指定输出指向以缓冲区内容贴图。

#define PDefHOp | ( |  | Padding,
|  |  | -,
|  |  | const Padding &x
| ) |  | PDefH(_t, operator _op, __VA_ARGS__)

related

加法逆元：对应分量调用一元 operator- 。

自从
  build 572

#define PDefHOp | ( |  | Padding,
|  |  | +,
|  |  | const Padding &x,
|  |  | const Padding &y
| ) |  | PDefH(_t, operator _op, __VA_ARGS__)

related

加法：对应分量调用 operator+ 。

#define PDefHOp | ( |  | Padding,
|  |  | -,
|  |  | const Padding &x,
|  |  | const Padding &y
| ) |  | PDefH(_t, operator _op, __VA_ARGS__)

related

减法：对应分量调用 operator- 。

自从
  build 572

#define PDefHOp | ( |  | Padding,
|  |  | *,
|  |  | const Padding &x,
|  |  | size_t n
| ) |  | PDefH(_t, operator _op, __VA_ARGS__)

related

乘法：对应分量调用 operator* 。

自从
  build 587

#define PDefHOp | ( |  | Rect,
|  |  | -,
|  |  | const Rect &r,
|  |  | const Padding &m
| ) |  | PDefH(_t, operator _op, __VA_ARGS__)

related

减法：放大屏幕标准矩形，相对位置由指定边距决定。

注解
  若边距过大，则矩形的宽或高可能为 0 。

自从
  build 572

取水平边距和。

yconstfn x Right

related

在文件 YGDI.h 第 108 行定义.

yconstfn x x x Bottom yconstfn x Right y Right

related

在文件 YGDI.h 第 114 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y Right

related

在文件 YGDI.h 第 122 行定义.

const ConstGraphics const Size const Point const Point const Size Rotation = RDeg0)

related

在文件 YGDI.h 第 431 行定义.

dst sp

related

在文件 YGDI.h 第 452 行定义.

dst src rot dst sp

related

在文件 YGDI.h 第 463 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn SPos | ( | x.Bottom * | ptrdiff_tn | ) | const

related

加法：缩小屏幕标准矩形，相对位置由指定边距决定。

注解
  若边距过大，则矩形的宽或高可能为 0 。

YSLib::Drawing::Padding::src

related

在文件 YGDI.h 第 452 行定义.

dst src rot src

related

在文件 YGDI.h 第 463 行定义.

yconstfn x x Top

related

在文件 YGDI.h 第 108 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y Top

related

在文件 YGDI.h 第 114 行定义.

yconstfn x x x Bottom yconstfn x Right y x Top y x Bottom y Bottom yconstfn x Right y x Top y Top

related

在文件 YGDI.h 第 122 行定义.

## 类成员变量说明

SPos YSLib::Drawing::Padding::Bottom = 0

在文件 YGDI.h 第 52 行定义.

参考自 YSLib::DS::UI::DualScreenReader::AdjustMargins(), YSLib::Drawing::ClipMargin(), YSLib::Drawing::FetchResizedBottomMargin(), YSLib::Drawing::operator+() , 以及 YSLib::Drawing::TextRegion::Scroll().

SPos YSLib::Drawing::Padding::Left = 0

空白距离：左、右、上、下。

自从
  build 365

在文件 YGDI.h 第 52 行定义.

参考自 YSLib::Drawing::ClipMargin(), YSLib::UI::TextBox::GetCaretPosition(), YSLib::UI::TreeList::GetIndentBox(), YSLib::UI::TextBox::GetPenOffset(), YSLib::Drawing::operator+(), YSLib::UI::HexViewArea::Refresh() , 以及 YSLib::UI::TreeList::TreeList().

SPos YSLib::Drawing::Padding::Right = 0

在文件 YGDI.h 第 52 行定义.

参考自 YSLib::Drawing::ClipMargin() , 以及 YSLib::Drawing::operator+().

YSLib::Drawing::Padding::Right = m.Right

在文件 YGDI.h 第 80 行定义.

SPos YSLib::Drawing::Padding::Top = 0

在文件 YGDI.h 第 52 行定义.

参考自 YSLib::DS::UI::DualScreenReader::AdjustMargins(), YSLib::UI::CheckButton::CheckButton(), YSLib::Drawing::ClipMargin(), YSLib::UI::TextBox::GetPenOffset(), YSLib::Drawing::operator+(), YSLib::UI::RadioButton::RadioButton() , 以及 YSLib::Drawing::TextRegion::Scroll().

YSLib::Drawing::Padding::Top = m.Top

在文件 YGDI.h 第 80 行定义.

该结构体的文档由以下文件生成:

- YGDI.h