LuminanceSourceAbstract
in package
implements
LuminanceSourceInterface
The purpose of this class hierarchy is to abstract different bitmap implementations across platforms into a standard interface for requesting greyscale luminance values.
Tags
Table of Contents
Interfaces
- LuminanceSourceInterface
- Interface for the luminance sources
Properties
- $height : int
- $luminances : array<string|int, int>
- $options : SettingsContainerInterface|QROptions
- $width : int
Methods
- __construct() : mixed
- getHeight() : int
- getLuminances() : array<string|int, int>
- Fetches luminance data for the underlying bitmap. Values should be fetched using: `int luminance = array[y * width + x] & 0xff`
- getRow() : array<string|int, int>
- Fetches one row of luminance data from the underlying platform's bitmap. Values range from 0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have to bitwise and with 0xff for each value. It is preferable for implementations of this method to only fetch this row rather than the whole image, since no 2D Readers may be installed and getLuminances() may never be called.
- getWidth() : int
- checkFile() : string
- setLuminancePixel() : void
Properties
$height
protected
int
$height
$luminances
protected
array<string|int, int>
$luminances
$options
protected
SettingsContainerInterface|QROptions
$options
$width
protected
int
$width
Methods
__construct()
public
__construct(int $width, int $height[, SettingsContainerInterface|QROptions $options = new QROptions() ]) : mixed
Parameters
- $width : int
- $height : int
- $options : SettingsContainerInterface|QROptions = new QROptions()
getHeight()
public
getHeight() : int
Return values
int —The height of the bitmap.
getLuminances()
Fetches luminance data for the underlying bitmap. Values should be fetched using: `int luminance = array[y * width + x] & 0xff`
public
getLuminances() : array<string|int, int>
Return values
array<string|int, int> —A row-major 2D array of luminance values. Do not use result $length as it may be larger than $width * $height bytes on some platforms. Do not modify the contents of the result.
getRow()
Fetches one row of luminance data from the underlying platform's bitmap. Values range from 0 (black) to 255 (white). Because Java does not have an unsigned byte type, callers will have to bitwise and with 0xff for each value. It is preferable for implementations of this method to only fetch this row rather than the whole image, since no 2D Readers may be installed and getLuminances() may never be called.
public
getRow(int $y) : array<string|int, int>
Parameters
- $y : int
-
The row to fetch, which must be in [0,getHeight())
Return values
array<string|int, int> —An array containing the luminance data.
getWidth()
public
getWidth() : int
Return values
int —The width of the bitmap.
checkFile()
protected
static checkFile(string $path) : string
Parameters
- $path : string
Tags
Return values
stringsetLuminancePixel()
protected
setLuminancePixel(int $r, int $g, int $b) : void
Parameters
- $r : int
- $g : int
- $b : int