PIXELSIZE: Difference between revisions

From QB64 Phoenix Edition Wiki
Jump to navigation Jump to search
(Created page with "{{DISPLAYTITLE:_PIXELSIZE}} 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. {{PageSyntax}} : {{Parameter|pixelSize%}} = _PIXELSIZE[({{Parameter|imageHandle&}})] {{PageDescription}} * If {{Parameter|imageHandle&}} is omitted, it is assumed to be the current write page. * Returns: ** 0 if the image or screen page specified by {{Parameter|imageHandle&}} is in text mode. ** 1 if the ima...")
 
No edit summary
Line 19: Line 19:
{{PageExamples}}
{{PageExamples}}
''Snippet:'' Saving Images for later program use. Handle values could be saved to an array.  
''Snippet:'' Saving Images for later program use. Handle values could be saved to an array.  
{{TextStart}} '' ''
{{TextStart}}
    
    
handle1& = _Getimage(sx1, sy1, sx2, sy2, sourcehandle&) ' function call
handle1& = _Getimage(sx1, sy1, sx2, sy2, sourcehandle&) ' function call
Line 29: Line 29:
{{Cb|_PUTIMAGE}} (0, 0), sourcehandle&, h&, (sx1, sy1)-(sx2, sy2) 'image is not displayed
{{Cb|_PUTIMAGE}} (0, 0), sourcehandle&, h&, (sx1, sy1)-(sx2, sy2) 'image is not displayed
GetImage& = h&
GetImage& = h&
{{Cb|END FUNCTION}} '' ''
{{Cb|END FUNCTION}}  
{{TextEnd}}
{{TextEnd}}
{{small|Adapted from code by Galleon}}
{{small|Adapted from code by Galleon}}
Line 49: Line 49:


{{PageNavigation}}
{{PageNavigation}}
[[Category:Latest]]

Revision as of 09:40, 2 July 2022

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


More examples


See also



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