mirror of
https://github.com/QB64Official/qb64.git
synced 2024-09-28 11:17:47 +00:00
50 lines
2 KiB
Text
50 lines
2 KiB
Text
{{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 image specified by {{Parameter|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 {{Parameter|imageHandle&}} is an invalid handle, then an [[ERROR Codes|invalid handle]] error occurs.
|
|
|
|
|
|
{{PageExamples}}
|
|
''Snippet:'' Saving Images for later program use. Handle values could be saved to an array.
|
|
{{TextStart}} '' ''
|
|
|
|
handle1& = _Getimage(sx1, sy1, sx2, sy2, sourcehandle&) ' function call
|
|
|
|
{{Cb|FUNCTION}} GetImage& (sx1, sy1, sx2, sy2, sourcehandle&)
|
|
bytespp = {{Cb|_PIXELSIZE}}(sourcehandle&)
|
|
{{Cb|IF...THEN|IF}} bytespp = 4 {{Cb|THEN}} Pal = 32 {{Cb|ELSE}} {{Cb|IF...THEN|IF}} bytespp = 1 {{Cb|THEN}} Pal = 256 {{Cb|ELSE}} {{Cb|EXIT FUNCTION}}
|
|
h& = {{Cb|_NEWIMAGE}}({{Cb|ABS}}(sx2 - sx1) + 1, {{Cb|ABS}}(sy2 - sy1) + 1, Pal)
|
|
{{Cb|_PUTIMAGE}} (0, 0), sourcehandle&, h&, (sx1, sy1)-(sx2, sy2) 'image is not displayed
|
|
GetImage& = h&
|
|
{{Cb|END FUNCTION}} '' ''
|
|
{{TextEnd}}
|
|
{{small|Adapted from code by Galleon}}
|
|
|
|
|
|
===More examples===
|
|
* [[SAVEIMAGE]] {{text|(SUB to convert image to bitmap)}}
|
|
* [[SaveIcon32]] {{text|(convert any image to icon)}}
|
|
* [[ThirtyTwoBit SUB]] {{text|(convert partial image to bitmap)}}
|
|
* [[Bitmaps]]
|
|
|
|
|
|
{{PageSeeAlso}}
|
|
* [[_LOADIMAGE]]
|
|
* [[_NEWIMAGE]]
|
|
* [[_PUTIMAGE]]
|
|
* [[_COPYPALETTE]]
|
|
|
|
|
|
{{PageNavigation}}
|