行列を自身とスケーリング行列の積で更新します。
#Include <GDIPlus.au3>
_GDIPlus_MatrixScale($hMatrix, $fScaleX, $fScaleY[, $bOrder = False])
パラメータ
$hMatrix | Matrixオブジェクトのハンドル |
$fScaleX | X軸方向のスケール乗数 |
$fScaleY | Y軸方向のスケール乗数 |
$bOrder | [オプション]乗算順序を指定します: True - スケーリング行列を左から乗じます False - スケーリング行列を右から乗じます |
返し値
成功: | True |
失敗: | False |
注意
なし。
関連
こちらも参照
MSDNライブラリでGdipScaleMatrixを検索して下さい。
例
#include <GUIConstants.au3>
#include <ScreenCapture.au3>
#include <WinAPI.au3>
; GUI作成
$hWnd = GUICreate("GDI+ Example", 500, 500)
GUISetState()
; GDI+を開始
_GDIPlus_Startup()
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hWnd)
_GDIPlus_GraphicsClear($hGraphics)
; スクリーンの左下のスクリーンショットをとる
$hScreenCap_hBitmap = _ScreenCapture_Capture("", 0, @DesktopHeight - 500, 500, @DesktopHeight)
$hScreenCap_Bitmap = _GDIPlus_BitmapCreateFromHBITMAP($hScreenCap_hBitmap)
$hMatrix = _GDIPlus_MatrixCreate()
; 行列を2でスケール (全てが2倍の大きさになる)
_GDIPlus_MatrixScale($hMatrix, 2.0, 2.0)
_GDIPlus_GraphicsSetTransform($hGraphics, $hMatrix)
_GDIPlus_GraphicsDrawImageRect($hGraphics, $hScreenCap_Bitmap, 0, 0, 500, 500)
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
; リソースを破棄
_WinAPI_DeleteObject($hScreenCap_hBitmap)
_GDIPlus_BitmapDispose($hScreenCap_Bitmap)
_GDIPlus_MatrixDispose($hMatrix)
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_Shutdown()