SetPicTransColor Picturefunctie
Met SetPicTransColor wordt de
tranparante kleur van een met Picture
gedeclareerde figuur of plaatje gewijzigd. Een transparante kleur is geheel of
gedeeltelijk doorzichtig waarbij de functie het resultaat heeft alsof de figuur
of het plaatje op een gekleurde ondergrond wordt gelegd met een kleur zoals
opgegeven met SetPicTransColor. Niet alle formaten ondersteunen
transparantie en als het wordt ondersteund dan wordt het niet altijd correct
verwerkt. Bestanden zoals .tif. .bmp en .png ondersteunen een apart A(lfa)
kanaal naast R(ood), G(roen) en B(lauw). In het Alfa kanaal wordt de mate van
tranparantie vermeld. SetPicTransColor verwerkt de transparante
kleuren in .png formaat correct. Bij .wmf, .bmp, gif en tif is dit echter niet
altijd het geval. Het .jpg formaat ondersteund geen transparantie. Verder wordt
door SetPicTransColor tevens de kleur vervangen die optioneel
met SetPicOriginColor is ingesteld. De met SetPicOriginColor
ingestelde kleur hoeft niet transparant te zijn. De functie resulteert
in de waarde TRUE indien succesvol en anders FALSE.
SetPicTransColor (PictureVarName, Red, Green, Blue)
SetPicTransColor (PictureVarName, Red, Green, Blue,
NoFill)
PictureVarName (MergedString)
In PictureVarName wordt de naam van een met Picture
gedeclareerde variabele vermeld in de vorm van een VariableName.
Red,Green,Blue (Expressie)
In Red, Green en Blue worden de kleuren in rood, groen en blauw
ingesteld met een waarde van 0 t/m 255. Hierbij is 0 uit (pixel uit, geen
kleur). Indien R, G en B alle drie op 255 worden ingesteld dan is de
resulterende kleur wit.
NoFill (Expressie)
Indien NoFill de waarde TRUE (of ongelijk is 0) dan wordt de transparante
kleur niet vervangen. In dat geval wordt alleen de kleur ingesteld met SetPicOriginColor
vervangen.Indien er geen kleur is ingesteld met SetPicOriginColor dan wordt de
opgegeven kleur niet vervangen. Ook de tranparante kleuren worden niet vervangen
zodat de figuur ongewijzigd blijft. De standaardwaare van NoFill is
FALSE.
Voorbeeld:
{
picture pPic
Integer iRed,iGreen,iBlue
iRed = 255
iGreen = 125
iBlue = 0
SetPicture(pPic,c:\Finalacc\MetroIcons\Animals\Horse.png)
While iBlue<255
SetPicTransColor(pPic,iRed,iGreen,iBlue)
}
[pPic] [iRed] [iGreen] [iBlue]
{
iRed = iRed - 25
iGreen = iGreen + 25/2
iBlue = iBlue + 25
Wend
}
Resultaat: