Creare da codice un'immagine trasparente: differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
Nessun oggetto della modifica
Riga 9: Riga 9:
   
   
   Dim i As Image
   Dim i As Image
   Dim pc As Picture
    
   
   
   With i = New Image(100, 100, <FONT color=#B22222>&FF000000</font>, 0)
   With i = New Image(100, 100, <FONT color=#B22222>&FFFFFF00</font>, 0)
     .Save("''/percorso/dell'immagine/trasparente''", 100)
     .Save("''/percorso/dell'immagine/trasparente''", 100)
  <FONT color=gray>' ''Generiamo anche una variabile di tipo "Picture", per un eventuale uso in una "PictureBox":''</font>
  <FONT color=gray>' ''Trasformiamo la variabile "Image" in una variabile di tipo "Picture" per essere caricata in una "PictureBox":''</font>
     pc = i.Picture
     PictureBox1.Picture = .Picture
   End With
   End With
   
   

Versione delle 18:44, 20 nov 2014

Talvolta può rendersi necessario utilizzare una o più immagini trasparenti.

E' possibile evitare di dover caricare preliminarmente nel progetto un file di un'immagine trasparente, generandola direttamente via codice Gambas con almeno tre modalità.


Mediante la Classe Image

Si potrà fare uso delle risorse disponibili con la Classe Image:

Public Sub Button1_Click()

 Dim i As Image
 

  With i = New Image(100, 100, &FF000000, 0)
    .Save("/percorso/dell'immagine/trasparente", 100)
' Trasformiamo la variabile "Image" in una variabile di tipo "Picture" per essere caricata in una "PictureBox":
    PictureBox1.Picture = .Picture
  End With

End


Mediante la Classe Picture

Si potrà fare uso delle risorse disponibili con la Classe Picture:

Public Sub Button1_Click()

 Dim pc As Picture


' Creando la variabile di tipo "Picture", porremo il terzo parametro a "True":
  With pc = New Picture(100, 100, True)
' Oppure il terzo parametro può essere impostato anche così:
' With pc = New Picture(100, 100, Color.Transparent)

' I formati utili per generare immagini trasparenti sono ".png" e ".xpm":
    .Save("/percorso/dell'immagine/trasparente.xpm", 100)
  End With

End


Mediante il protocollo del file immagine XPM

Si potrà anche fare uso del protocollo relativo ai file immagine del formato XPM.

Public Sub Button1_Click()

  Dim wc, hr As Short
  Dim s, px As String


' La variabile "wc" rappresenta il numero di pixel della dimensione orizzontale (numero di colonne) dell'immagine:
    wc = 100

' La variabile "hr" rappresenta il numero di pixel della dimensione verticale (numero di righe) dell'immagine:
    hr = 100

    px = String$(hr, "\"" & String$(wc, ".") & "\",\n")

    s = "/* XPM */\n" &
        "static char *" & Application.Name & "[]={\n" &
        "\"" & wc & " " & hr & " 1 1\",\n" &          ' Valori: <width/cols> <height/rows> <colors> <char on pixel>
        "\". c None\",\n" &          ' Colors
        px & "};"                    ' Pixels

' Viene salvata l'immagine, per essere successivamente caricata ed utilizzata:
    File.Save("/percorso/dell'immagine/trasparente", s)

End