Message de rapport:
 

Au Secours ! Re: Dégradé avec deux couleurs

Sujet: Au Secours ! Re: Dégradé avec deux couleurs
par Anonyme sur 9/3/2006 9:35:43

Bonjour WDForgiste (Femme) et WdForgiste (Homme)
Et Flute ...
J'ai tout essayé mais cela ne fonctionne pas

PROCEDURE dDégradé(nDC, x1, y1, x2, y2, nSens = 2, nCouleurDebut = iNoir, nCouleurFin = iBlanc, nTransparenceDebut = 128, nTransparenceFin = 128)
PROCEDURE dDégradé(nDC, x1, y1, x2, y2, nSens = 2, nCouleurDebut = iNoir, nCouleurFin = iBlanc, nTransparenceDebut = 128, nTransparenceFin = 128)
// J'ai d'abord essayé cette méthode mais Ndc =0
SI nDC=0 ALORS nDC=SysRécupèreDC(dDébutDessin("IMG_Lum")	)
//-------------------------------------------------------
//Puis celle Ci 
// Mais toujours rien dans mon champ image
dDébutDessin("IMG_Lum")
SI nDC=0 ALORS nDC=SysRécupèreDC(Handle("IMG_Lum")	)
//---------------------------------------------------
GRADIENT_RECT est une structure
	UpperLeft, LowerRight sont des entiers sans signe
FIN
TRIVERTEX est une structure
	X, Y sont des entiers	// Coordonnées de départ du dégradé
	Red, Green, Blue, Alpha sont des entiers sur 2 // Couleur et transparence
FIN

Vertex est un tableau de 2 TRIVERTEX
iGrRect est un GRADIENT_RECT

cdA, cfA sont des entiers sur 4
cdR, cdG, cdB sont des entiers sur 4
cfR, cfG, cfB sont des entiers sur 4

// Récupère les composantes de la couleur de départ
cdR = modulo(nCouleurDebut, 256)
cdG = modulo(nCouleurDebut/256, 256)
cdB = modulo(nCouleurDebut/256/256, 256)

// Récupère les composantes de la couleur d'arrivée
cfR = modulo(nCouleurFin, 256)
cfG = modulo(nCouleurFin/256, 256)
cfB = modulo(nCouleurFin/256/256, 256)		

// Transforme les entiers sur 2 en entiers sur 4
cdR = cdR + cdR * 0x00ff
cdG = cdG + cdG * 0x00ff
cdB = cdB + cdB * 0x00ff
cdA = nTransparenceDebut + nTransparenceDebut * 0x00ff

// Transforme les entiers sur 2 en entiers sur 4
cfR = cfR + cfR * 0x00ff
cfG = cfG + cfG * 0x00ff
cfB = cfB + cfB * 0x00ff
cfA = nTransparenceFin + nTransparenceFin * 0x00ff

// Vertex de départ
Vertex[1]:X = x1
Vertex[1]:Y = y1
Vertex[1]:Red 	= cdR
Vertex[1]:Green = cdG
Vertex[1]:Blue  = cdB
Vertex[1]:Alpha = cdA

// Vertex d'arrivée
Vertex[2]:X = x2
Vertex[2]:Y = y2
Vertex[2]:Red 	= cfR
Vertex[2]:Green = cfG
Vertex[2]:Blue  = cfB
Vertex[2]:Alpha = cfA

iGrRect:UpperLeft  = 0
iGrRect:LowerRight = 1

// Dessine le dégradé
API("msimg32", "GradientFill", nDC, &Vertex[1], 2, &iGrRect, 1, nSens)


Si mon modérateur préféré ou une autre personne compétente peux m'éclairer, je lui en serai éternellement reconnaissant
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2