ALPHA32: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 33: Line 33:
{{Cl|END}}
{{Cl|END}}
{{CodeEnd}}
{{CodeEnd}}
{{OutputStart}}{{text|Color: 3237937407|#FFFFFF}}
{{OutputStart}}{{Text|Color: 3237937407|#FFFFFF}}
{{text|Alpha32: 192|#FF00FF}}
{{Text|Alpha32: 192|#FF00FF}}
{{OutputEnd}}
{{OutputEnd}}
: ''Notes:'' The color value is equivalent to [[&H|hexadecimal]] &HC0FF00FF where &HC0 equals 192. [[_RGB]] alphas are always &HFF(255).
: ''Notes:'' The color value is equivalent to [[&H|hexadecimal]] &HC0FF00FF where &HC0 equals 192. [[_RGB]] alphas are always &HFF(255).
Line 41: Line 41:
{{PageSeeAlso}}
{{PageSeeAlso}}
* [[_ALPHA]], [[_SETALPHA]]
* [[_ALPHA]], [[_SETALPHA]]
* [[_RGBA]], [[_RGBA32]] {{text|(set color with alpha)}}
* [[_RGBA]], [[_RGBA32]] {{Text|(set color with alpha)}}
* [[_RED]], [[_GREEN]], [[_BLUE]]
* [[_RED]], [[_GREEN]], [[_BLUE]]
* [[_RED32]], [[_GREEN32]]. [[_BLUE32]]
* [[_RED32]], [[_GREEN32]]. [[_BLUE32]]

Revision as of 22:11, 11 February 2023

The _ALPHA32 function returns the alpha transparency level of a 32 bit color value.


Syntax

alpha& = _ALPHA32(color32~&)


Parameters

  • color32& is the _UNSIGNED LONG 32 bit color value used to retrieve the alpha level.
    • Color values that are set as a _CLEARCOLOR always have an alpha level of 0 (transparent).
    • _SETALPHA can set any alpha level from 0 (or fully transparent) to 255 (or opaque).
    • Normal color values that are set by _RGB or _RGB32 always have an alpha level of 255 (opaque).


Description

  • In 4-bit (16 colors) or 8-bit (256 colors) palette screens the function will return 0.
  • _RED32, _GREEN32, _BLUE32 and _ALPHA32 are all equivalent to _RED, _GREEN, _BLUE and _ALPHA but they are highly optimized and only accept a 32-bit color (RGBA) value. Using these in your code (opposed to dividing then ANDing 32-bit color values) makes code easy to read.
  • NOTE: 32 bit _NEWIMAGE screen page backgrounds are transparent black or _ALPHA 0. Use _DONTBLEND or CLS for opaque!


Examples

Example: Finding the alpha transparency level in a 32 bit screen using an _RGBA _UNSIGNED LONG color value.

SCREEN _NEWIMAGE(640, 480, 32)

clr~& = _RGBA(255, 0, 255, 192)
PRINT "Color:"; clr~&

COLOR clr~&
PRINT "Alpha32:"; _ALPHA32(clr~&)

END
Color: 3237937407
Alpha32: 192
Notes: The color value is equivalent to hexadecimal &HC0FF00FF where &HC0 equals 192. _RGB alphas are always &HFF(255).


See also



Navigation:
Main Page with Articles and Tutorials
Keyword Reference - Alphabetical
Keyword Reference - By usage
Report a broken link