_PIXELSIZE - mkilgore/QB64pe GitHub Wiki

The _PIXELSIZE function returns the color depth (Bits Per Pixel) of an image as 0 for text, 1 for 1 to 8 BPP or 4 for 32 bit.

Syntax

pixelSize% = _PIXELSIZE[(imageHandle&)]

Description

  • If imageHandle& is omitted, it is assumed to be the current write page.
  • Returns:
    • 0 if the image or screen page specified by imageHandle& is in text mode.
    • 1 if the image specified by imageHandle& is in 1 (B & W), 4 (16 colors) or 8 (256 colors) BPP mode.
    • 4 if the image specified is a 24/32-bit compatible mode. Pixels use three bytes, one per red, green and blue color intensity.
  • The SCREEN or _NEWIMAGE or _LOADIMAGE color mode (256 or 32) can influence the pixel sizes that can be returned.
  • If imageHandle& is an invalid handle, then an invalid handle error occurs.

Examples

Snippet: Saving Images for later program use. Handle values could be saved to an array.

handle1& = _Getimage(sx1, sy1, sx2, sy2, sourcehandle&) ' function call

[[FUNCTION|FUNCTION]] GetImage& (sx1, sy1, sx2, sy2, sourcehandle&)
bytespp = [[_PIXELSIZE|_PIXELSIZE]](sourcehandle&)
[[IF...THEN|IF]] bytespp = 4 [[THEN|THEN]] Pal = 32 [[ELSE|ELSE]] [[IF...THEN|IF]] bytespp = 1 [[THEN|THEN]] Pal = 256 [[ELSE|ELSE]] [[EXIT FUNCTION|EXIT FUNCTION]]
h& = [[_NEWIMAGE|_NEWIMAGE]]([[ABS|ABS]](sx2 - sx1) + 1, [[ABS|ABS]](sy2 - sy1) + 1, Pal)
[[_PUTIMAGE|_PUTIMAGE]] (0, 0), sourcehandle&, h&, (sx1, sy1)-(sx2, sy2) 'image is not displayed
GetImage& = h&
[[END FUNCTION|END FUNCTION]] '' ''
Adapted from code by Galleon

More examples

See also


Navigation:
Go to Keyword Reference - Alphabetical
Go to Keyword Reference - By usage
Go to Main WIKI Page
⚠️ **GitHub.com Fallback** ⚠️