S'identifier

API
Documentation
Ressources
Trucs & astuces
Libre
Gabarits
Services

Membres
Participer
Visiter

Contact

Meilleure résolution
mode 800 x 600

Optimisé pour
IE v.5
Netscape v.6
mais surtout pour
Mozilla v.1
minimum

 


Membre de Click-FR®, Réseau francophone Paie-Par-Click

StretchBlt

Date de parution : 26/09/2000 - Cette fiche API a été lue 1466 fois

Description

StretchBlt copie une partie d'une image d'un objet vers un autre. Cette fonction permet également de changer la taille originale et les dimensions d'une partie de cette image. Le point que vous spécifiez comme emplacement de l'image copiée dans l'objet cible sera le coin haut gauche de la portion de l'image. La fonction retourne 0 si elle faillit et 1 si elle réussit (ou GetLastError pour obtenir un message d'erreur étendu).

Syntaxe

AppelDLL32("gdi32", "StretchBlt", hDC, x, y, nWidth, nHeight, hSrcDC, xSrc, ySrc, nSrcWidth, nSrcHeight, dwRop)

hDC
Le contexte objet (device context) de la destination (celui qui reçoit le morceau d'image).
x
La coordonnée x du point où mettre l'image dans la destination.
y
La coordonnée y du point où mettre l'image dans la destination.
nWidth
La largeur du morceau d'image dans la destination.
nHeight
La hauteur du morceau d'image dans la destination.
hSrcDC
Le contexte objet de la source.
xSrc
La coordonnée x du coin haut gauche du morceau d'image dans la source.
ySrc
La coordonnée y du coin haut gauche du morceau d'image dans la source.
nSrcWidth
La largeur du morceau d'image dans la source.
nSrcHeight
La hauteur du morceau d'image dans la source.
dwRop
L'un des sémaphores suivant précise quelle méthode doit être utilisé pour copier l'image source :
SRCAND = 0x8800C6
Logiquement Et pour les deux valeurs couleur
(destination = source Et destination).
SRCCOPY = 0xCC0020
Copie l'image source exactement
(destination = source).
SRCERASE = 0x440328
Logiquement Et pour l'image source et destination en binaire inverse
(destination = source Et (Pas destination).
SRCINVERT = 0x660046
Logiquement Ou eXclusif pour les deux valeurs couleur
(destination = source ouX destination).
SRCPAINT = 0xEE0086
Logiquement Ou pour les deux valeurs couleur
(destination = source Ou destination).

Compatibilité

  • Windows 95 : supporté.
  • Windows 98 : supporté.
  • Windows NT : réclame Windows NT 3.1 ou plus.
  • Windows 2000 : supporté.
  • Windows CE : non supporté.

Remarque

Exemple 1

// Copie une portion de l'image et la réduit en taille 16 x 32
// Attention, il y a deux champs image nommés IMG1 et IMG2

dwRop est un entier long
hWnd1, hWnd2, hDC1, hDC2 sont des entiers longs

// Ce code vous est offert par Beaussier en ligne
dwRop = 0xCC0020 // Copie à l'identique

hWnd1 = Handle("IMG1")
hWnd2 = Handle("IMG2")

hDC1 = AppelDLL32("user32", "GetDC", hWnd1)
hDC2 = AppelDLL32("user32", "GetDC", hWnd2)

AppelDLL32("gdi32","StretchBlt", hDC2, 0, 0, 50, 50, hDC1, 50, 50, 16, 32, dwRop)


Nombre de commentaire sur StretchBlt : 0

Rappel : Le code fourni est compatible Windev v.4 et 5. Pour les versions supérieures, vous devez modifier le type des variables numériques. Par exemple : entier long devient entier.
Bien sûr, les marques citées sont déposées par leurs sociétés respectives. Ces pages sont à la disposition de tous, le code fourni est libre mais toute responsabilité est déclinée en cas de mauvais usage ou de dysfonctionnement.
© 2000-2005 Beaussier & Le Centre W..D..