CIL --> CameleonTH Image Library

Vous avez développé un logiciel en PureBasic et vous souhaitez le faire connaitre ?
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

un ptit exemple de manipulation de pixel

Code : Tout sélectionner

Structure RGBA
  r.b
  g.b
  b.b
  a.b
EndStructure

CreateImage(0, 10, 10)

If StartDrawing( ImageOutput() )
  
  Box(0, 0, 10, 10, RGB(200, 100, 50))
  StopDrawing()
EndIf

;la variable pixel sera affectée
;mais on travaille les modifs avec *p
*p.RGBA = @pixel.l

pixel = RGB(200, 100, 50)

Debug *p\r & $FF ;200
Debug *p\g & $FF ;100
Debug *p\b & $FF ; 50

Debug "-------------------"

hWnd = OpenWindow(0, 0, 0, 0, 0, #PB_Window_Invisible, "")
hDC = GetDC_(hWnd) ;je sais pas faire sans au moins une fenetre

hIMG = CreateCompatibleDC_(hDC)
SelectObject_(hIMG, ImageID())
pixel = GetPixel_(hIMG, 0, 0)

Debug *p\r & $FF ;200
Debug *p\g & $FF ;100
Debug *p\b & $FF ; 50
Dri ;)
nico
Messages : 3702
Inscription : ven. 13/févr./2004 0:57

Message par nico »

Code : Tout sélectionner

hDC = GetDC_(hWnd) ;je sais pas faire sans au moins une fenetre 

hIMG = CreateCompatibleDC_(hDC) 
Tu remplace par 0:

Code : Tout sélectionner

hIMG = CreateCompatibleDC_(0) 
Si 0, la fonction crée un DC mémoire compatible avec l'écran en cours de l'application.
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

Merci! bon à savoir ^^

Dri :)
Répondre