↑  ←  Описание функции


_GDIPlus_GraphicsDrawImageRectRect

Рисует объект содержащий изображение

#include <GDIPlus.au3>
_GDIPlus_GraphicsDrawImageRectRect($hGraphics, $hImage, $iSrcX, $iSrcY, $iSrcWidth, $iSrcHeight, $iDstX, $iDstY, $iDstWidth, $iDstHeight [, $iUnit = 2])

Параметры

$hGraphics Дескриптор графического объекта
$hImage Дескриптор объекта изображения
$iSrcX X координата левого верхнего угла исходного изображения
$iSrcY Y координата левого верхнего угла исходного изображения
$iSrcWidth Ширина исходного изображения
$iSrcHeight Высота исходного изображения
$iDstX X координата левого верхнего угла результирующего изображения
$iDstY Y координата левого верхнего угла результирующего изображения
$iDstWidth Ширина результирующего изображения
$iDstHeight Высота результирующего изображения
$iUnit [необязательный] Задаёт единицу измерения для изображения

Возвращаемое значение

Успех:Возвращает True
Ошибка:Возвращает False

См. также

Искать GdipDrawImageRectRectI в библиотеке MSDN

Пример

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

_Main()

Func _Main()
    Local $hGUI1, $hGUI2, $hImage, $hGraphic1, $hGraphic2

    ; Захватывает левый верхний угол экрана
    _ScreenCapture_Capture (@MyDocumentsDir & "\GDIPlus_Image.jpg", 0, 0, 400, 300)

    ; Создаёт GUI для оригинального изображения
    $hGUI1 = GUICreate("Оригинал", 400, 300, 0, 0)
    GUISetState()

    ; Создаёт GUI для масштабированного изображения
    $hGUI2 = GUICreate("Масштабированный", 400, 300, 0, 400)
    GUISetState()

    ; Инициализация библиотеки GDI+ и загрузка изображения из файла
    _GDIPlus_Startup ()
    $hImage = _GDIPlus_ImageLoadFromFile (@MyDocumentsDir & "\GDIPlus_Image.jpg")

    ; Рисует оригинальное изображение
    $hGraphic1 = _GDIPlus_GraphicsCreateFromHWND ($hGUI1)
    _GDIPlus_GraphicsDrawImage ($hGraphic1, $hImage, 0, 0)

    ; Рисует изображение с 2-х кратным масштабированием
    $hGraphic2 = _GDIPlus_GraphicsCreateFromHWND ($hGUI2)
    _GDIPlus_GraphicsDrawImageRectRect ($hGraphic2, $hImage, 0, 0, 200, 200, 0, 0, 400, 300)

    ; Освобождает ресурсы
    _GDIPlus_GraphicsDispose ($hGraphic1)
    _GDIPlus_GraphicsDispose ($hGraphic2)
    _GDIPlus_ImageDispose ($hImage)
    _GDIPlus_Shutdown ()

    ; Удаление временного файла
    FileDelete(@MyDocumentsDir & "\GDIPlus_Image.jpg")

    ; Цикл выполняется, пока окно не будет закрыто
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE


EndFunc   ;==>_Main