CreateImage()

Syntaxe

Resultat = CreateImage(#Image, Largeur, Hauteur [, Profondeur [, CouleurDeFond]])
Description
Crée une nouvelle image vierge (fond noir).

Arguments

#Image Le numéro d'identification de l'image.

#PB_Any peut être utilisé pour générer automatiquement ce numéro.
Largeur, Hauteur Les dimensions de la nouvelle image.

À la fois la largeur et la hauteur doivent être supérieures à zéro.
Profondeur (optionnel) La profondeur de couleur de la nouvelle image.

Les valeurs valides sont: 24 et 32.
La valeur par défaut est 24 bits, si la profondeur n'est pas spécifiée.
CouleurDeFond (optionnel) La couleur de fond RGB() utilisée.

Cette couleur peut être réglée sur #PB_Image_Transparent pour créer une image avec le canal alpha fixé pour une transparence totale.
Cela n'a d'effet que sur les images 32 bits.

Si non spécifié alors la couleur par défaut est le noir.

Valeur de retour

Renvoie une valeur non nulle si l'image a été créée avec succès et zéro sinon. Si #PB_Any a été spécifié comme paramètre #Image alors le numéro généré automatiquement est renvoyé dans 'Resultat' en cas de succès.

Remarques

La taille maximale de l'image est fonction du système d'exploitation et de la quantité de mémoire disponible. Si la mémoire disponible est suffisante alors une image de 8192x8192 peut être traitée par tous les systèmes d'exploitation pris en charge par PureBasic.

Avec l'image créée , vous pouvez notamment utiliser les commandes suivantes :
StartDrawing() avec ImageOutput() pour dessiner dans l'image.
StartVectorDrawing() avec ImageVectorOutput() pour faire du dessin vectoriel.
CopyImage() pour créer une copie de l'image.
GrabImage() pour créer une autre image en copiant une zone définie dans l'image.
DrawImage() avec ImageID() pour dessiner l'image sur la surface de dessin en cours.
ImageGadget() pour afficher l'image dans une application fenêtrée.
ButtonImageGadget() pour créer un bouton avec image dans une application fenêtrée.

Exemple

  If OpenWindow(0, 0, 0, 256, 256, "CreateImage", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
    ImageGadget(0, 0, 0, 256, 256, 0)
    
    If CreateImage(0, 256, 256, 32, RGB(255,255,255))
      StartDrawing(ImageOutput(0))
      Ellipse(70, 50, 30, 10, RGB(0,0,255))
      Ellipse(186, 50, 30, 10, RGB(0,0,255))
      LineXY(128, 80, 128, 150, RGB(255, 0, 255))
      RoundBox(70, 200, 110, 30, 20, 20, RGB(255, 0, 0))
      StopDrawing()
    EndIf
    
    SetGadgetState(0, ImageID(0)) ; Affichage
    
    Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
   EndIf

Voir aussi

LoadImage(), CatchImage(), FreeImage()

OS Supportés

Tous

<- CopyImage() - Image Index - EncodeImage() ->