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: