Differenze tra le versioni di "Creare da codice un'immagine trasparente"
Da Gambas-it.org - Wikipedia.
Riga 1: | Riga 1: | ||
Talvolta può rendersi necessario utilizzare una o più immagini <SPAN style="text-decoration:underline">trasparenti</span>. | Talvolta può rendersi necessario utilizzare una o più immagini <SPAN style="text-decoration:underline">trasparenti</span>. | ||
− | + | E' possibile evitare di dover caricare preliminarmente nel progetto un file di un'immagine trasparente, generandola direttamente via codice Gambas con almeno due modalità. | |
+ | |||
+ | |||
+ | ===Mediante la Classe ''Image''=== | ||
+ | Si potrà fare uso delle risorse disponibili con la Classe ''Image'': | ||
+ | '''Public''' Sub Button1_Click() | ||
+ | |||
+ | Dim i As Image | ||
+ | Dim pc As Picture | ||
+ | |||
+ | |||
+ | With i = New Image(100, 100, &FFFFFF00, 0) | ||
+ | .Save("''/percorso/dell'immagine/trasparente''", 100) | ||
+ | <FONT color=gray>' ''Generiamo anche una variabile di tipo "Picture", per un eventuale uso in una "PictureBox":''</font> | ||
+ | pc = i.Picture | ||
+ | End With | ||
+ | |||
+ | '''End''' | ||
+ | |||
+ | |||
+ | ===Mediante il protocollo del file immagine ''XPM''=== | ||
+ | Si potrà anche fare uso del protocollo relativo ai file immagine del [[Struttura_del_formato_XPM|formato ''XPM'']]. | ||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
− | |||
Dim wc, hr As Short | Dim wc, hr As Short | ||
Dim s, px As String | Dim s, px As String | ||
− | |||
− | |||
− | |||
− | <FONT color= | + | <FONT color=gray>' ''La variabile "wc" rappresenta il numero di pixel della dimensione orizzontale (numero di colonne) dell'immagine:''</font> |
− | wc = | + | wc = 100 |
− | <FONT color= | + | <FONT color=gray>' ''La variabile "hr" rappresenta il numero di pixel della dimensione verticale (numero di righe) dell'immagine:''</font> |
− | hr = | + | hr = 100 |
px = String$(hr, "\"" & String$(wc, ".") & "\",\n") | px = String$(hr, "\"" & String$(wc, ".") & "\",\n") | ||
Riga 23: | Riga 40: | ||
s = "/* XPM */\n" & | s = "/* XPM */\n" & | ||
"static char *" & Application.Name & "[]={\n" & | "static char *" & Application.Name & "[]={\n" & | ||
− | "\"" & wc & " " & hr & " 1 1\",\n" & <FONT color= | + | "\"" & wc & " " & hr & " 1 1\",\n" & <FONT color=gray>' ''Valori: <width/cols> <height/rows> <colors> <char on pixel>''</font> |
− | "\". c None\",\n" & <FONT color= | + | "\". c None\",\n" & <FONT color=gray>' ''Colors''</font> |
− | px & "};" | + | px & "};" <FONT color=gray>' ''Pixels''</font> |
− | <FONT color= | + | <FONT color=gray>' ''Viene salvata l'immagine, per essere successivamente caricata ed utilizzata:''</font> |
− | File.Save("'' | + | File.Save("''/percorso/dell'immagine/trasparente''", s) |
'''End''' | '''End''' |
Versione delle 00:40, 5 set 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 due modalità.
Mediante la Classe Image
Si potrà fare uso delle risorse disponibili con la Classe Image:
Public Sub Button1_Click() Dim i As Image Dim pc As Picture With i = New Image(100, 100, &FFFFFF00, 0) .Save("/percorso/dell'immagine/trasparente", 100) ' Generiamo anche una variabile di tipo "Picture", per un eventuale uso in una "PictureBox": pc = i.Picture 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