_GDIPlus_GraphicsDrawImageRectRectIA
Рисует исходное изображение преобразуя его в заданный размер прямоугольника
#Include <GDIP.au3>
_GDIPlus_GraphicsDrawImageRectRectIA($hGraphics, $hImage, $nSrcX, $nSrcY, $nSrcWidth, $nSrcHeight, $nDstX, $nDstY, $nDstWidth, $nDstHeight[, $hImageAttributes = 0[, $iUnit = 2]])
Параметры
$hGraphics | Указатель на объект Graphics |
$hImage |
Указатель на объект Image |
$ISrcX |
X-координата левого верхнего угла исходного изображения |
$ISrcY |
Y-координата левого верхнего угла исходного изображения |
$ISrcWidth |
Ширина исходного изображения |
$ISrcHeight |
Высота исходного изображения |
$IDstX |
X-координата левого верхнего угла преобразованного изображения |
$IDstY |
Y-координата левого верхнего угла преобразованного изображения |
$IDstWidth |
Ширина преобразованного изображения |
$IDstHeight |
Высота преобразованного изображения |
$hImageAttributes |
[необязательный] Указатель на объект ImageAttributes, который определяет атрибуты цвета и размера изображения |
$iUnit |
[необязательный] Единицы измерения: 0 - Универсальные координаты, нефизическая единица 1 - Display units (Отображаемые единицы) 2 - единица 1 пиксель 3 - единица 1 пункт или 1/72 дюйма 4 - единица 1 дюйм 5 - единица 1/300 дюйма 6 - единица 1 миллиметр |
Возвращаемое значение
Успех: | Возвращает True |
Ошибка: | Возвращает False, либо: |
Если ошибка DllCall(), устанавливает @error и @extended возвращённые вызовом DllCall() | |
$GDIP_STATUS содержит не нулевое значение кода ошибки. |
См. также
Искать GdipDrawImageRectRect в библиотеке MSDNПример
#include <GUIConstantsEx.au3>
#include <GDIP.au3>
#include <ScreenCapture.au3>
Local $hBitmap, $hBmp, $hGraphics, $hGUI, $iDHeight, $iDWidth
_GDIPlus_Startup()
$iWidth = @DesktopWidth / 3
$iHeight = @DesktopHeight / 3
$hGUI = GUICreate("Рисует изображение в прямоугольнике", $iWidth, $iHeight)
; Создаёт графический объект из дескриптора окна
$hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)
; Делает снимок левой верхней части экрана
$hBmp = _ScreenCapture_Capture("", 0, 0, $iWidth, $iHeight, False)
; Создаёт объект GDI+ Bitmap из объекта GDI Bitmap
$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hBmp)
GUISetState()
; Рисует изображение в указанном прямоугольнике
_GDIPlus_GraphicsDrawImageRectRectIA($hGraphics, $hBitmap, 0, 0, @DesktopWidth / 6, @DesktopHeight / 6, 0, 0, $iWidth, $iHeight) ; Увеличенное
Sleep(1000)
_GDIPlus_GraphicsDrawImageRectRectIA($hGraphics, $hBitmap, 0, 0, $iWidth, $iHeight, 0, 0, @DesktopWidth / 6, @DesktopHeight / 6) ; Уменьшенное
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
_GDIPlus_ImageDispose($hBitmap)
_GDIPlus_GraphicsDispose($hGraphics)
_GDIPlus_Shutdown()