函数参考


_GDIPlus_MatrixTranslate

移动矩阵

#Include <GDIPlus.au3>
_GDIPlus_MatrixTranslate($hMatrix, $fOffsetX, $fOffsetY[, $bAppend = False])

参数

$hMatrix 返回矩阵对象句柄
$fOffsetX 沿 x 轴添加像素的数量
$fOffsetY 沿 Y 轴添加像素的数量
$bAppend [可选参数] 指定移动方向:
True - 向左边平移矩阵
False - 向右边平移矩阵

返回值

成功: 返回 True
失败: 返回 False

注意/说明

None.

相关

详情参考

在MSDN中搜索


示例/演示


#include <GUIConstantsEx.au3>
#include <GDIPlus.au3>

; 创建 GUI
Local $hWnd = GUICreate("GDI+ Example", 400, 300)
GUISetState()

; 初始化 GDI+
_GDIPlus_Startup()
Local $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hWnd)

Local $hMatrix = _GDIPlus_MatrixCreate()
; 向着中心把矩阵的高度和宽度变成原来的一半
_GDIPlus_MatrixTranslate($hMatrix, 200, 150)
_GDIPlus_MatrixRotate($hMatrix, 45)
_GDIPlus_GraphicsSetTransform($hGraphics, $hMatrix)

Local $hPen = _GDIPlus_PenCreate(0xFF00FF00, 10)

_GDIPlus_GraphicsClear($hGraphics)
; 在 GUI 的左上角描绘, 不过由于我们平移了矩阵, 所以对象将出现在 GUI 的中心
_GDIPlus_GraphicsDrawRect($hGraphics, -50, -50, 100, 100, $hPen)


Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

; 清理资源
_GDIPlus_PenDispose($hPen)
_GDIPlus_MatrixDispose($hMatrix)
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_Shutdown()