# new Float16Image(width, height, colorspaceopt, pixelFormatopt)
Creates a new Float16Image instance.
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
width |
number
|
The width of the image in pixels. |
|
height |
number
|
The height of the image in pixels. |
|
colorspace |
string
|
<optional> |
The color space to use for the image. Defaults to |
pixelFormat |
string
|
<optional> |
The pixel format to use for the image. Defaults to |
Classes
Members
# DEFAULT_PIXELFORMAT
The default pixel format for new images, set to "rgba-float16".
# DEFAULT_PIXELFORMAT
The default pixel format for new images, set to "rgba-float16".
# pixelFormat
The pixel format of the image - usualy 'rgba-float16'.
# pixelFormat
The pixel format of the image - usualy 'rgba-float16'.
ImageDataPixelFormat
# static DEFAULT_PIXELFORMAT
The default pixel format for new images, set to "rgba-float16".
ImageDataPixelFormat
# static DEFAULT_PIXELFORMAT
The default pixel format for new images, set to "rgba-float16".
Methods
# applyGain(gain, optionsopt) → {this}
Scales RGB channels into the HDR range by a gain factor.
This is the lightweight replacement for the removed colorjs.io based
convertPixelToRec2100_hlg: no gamut conversion, just a linear boost.
Values >1 only become visible as HDR on a canvas configured with
toneMapping: { mode: "extended" } (see getHdrOptions()), otherwise
they clip to SDR white.
Alpha is preserved by default.
When WASM acceleration is enabled via setWasmEnabled(true) (experimental,
disabled by default) and the image is large enough, the loop runs in the
inlined WASM kernel with transparent fallback to JS.
Parameters:
| Name | Type | Attributes | Default | Description |
|---|---|---|---|---|
gain |
number
|
Array.<number>
|
Uniform gain or per-channel |
||
options |
object
|
<optional> |
Options. |
|
preserveAlpha |
boolean
|
<optional> |
true | Leave alpha untouched when |
useWasm |
boolean
|
<optional> |
Force the WASM ( |
The Float16Image instance for method chaining.
this
# fill(color) → {Float16Image|undefined}
Fills the entire image with a single color.
Parameters:
| Name | Type | Description |
|---|---|---|
color |
Array.<number>
|
An array of four numbers representing the R, G, B, and A channels
as float values. |
The Float16Image instance for method chaining, or undefined if the color array is invalid.
Float16Image
|
undefined
# getImageData() → {ImageData|null}
Creates a standard ImageData object from the Float16Image data.
An ImageData object, or null if the data is undefined.
ImageData
|
null
# pixelCallback(fn)
Iterates through each pixel of the image and applies a callback function to its data.
Parameters:
| Name | Type | Description |
|---|---|---|
fn |
HDRPixelCallback
|
The callback function to apply to each pixel. |
# scaled(gain, optionsopt) → {Float16Image}
Returns a copy of the image with applyGain() applied, leaving the original untouched.
Parameters:
| Name | Type | Attributes | Description |
|---|---|---|---|
gain |
number
|
Array.<number>
|
Uniform gain or per-channel |
|
options |
object
|
<optional> |
Options, see |
A new Float16Image with scaled RGB values.
# setImageData(imageData) → {void}
Sets the image data of the current Float16Image instance.
Parameters:
| Name | Type | Description |
|---|---|---|
imageData |
HDRImageData
|
The image data to set. |
If the color space of the HDRImageData is not supported.
Error
void
# static convertArrayToRec2100_hlg(data) → {Float16Array}
Converts a Uint8ClampedArray of sRGB pixel data to a Float16Array
of pixels in the rec2100-hlg color space.
Parameters:
| Name | Type | Description |
|---|---|---|
data |
Uint8ClampedArray
|
The array of 8-bit pixel data. |
The converted 16-bit pixel data.
Float16Array
# static fromImageData(imageData) → {Float16Image}
Creates a Float16Image instance from an HDRImageData object.
Parameters:
| Name | Type | Description |
|---|---|---|
imageData |
HDRImageData
|
The image data to use. |
If the color space of the HDRImageData is not supported.
Error
The new Float16Image instance.
# static fromImageDataArray(width, height, imageData) → {Float16Image}
Creates a Float16Image instance from an Uint8ClampedArray object.
Parameters:
| Name | Type | Description |
|---|---|---|
width |
number
|
The width of the image. |
height |
number
|
The height of the image. |
imageData |
HDRImageData
|
The image data to use. |
If the color space of the HDRImageData is not supported.
Error
The new Float16Image instance.
# async static fromURL(url) → {Promise.<(Float16Image|undefined)>}
Loads an image from a URL and creates a Float16Image instance from it.
Parameters:
| Name | Type | Description |
|---|---|---|
url |
URL
|
The URL of the image to load. |
A promise that resolves with a Float16Image instance, or undefined if the image could not be loaded.
Promise.<(Float16Image|undefined)>
# static scaleUint8ToFloat16(val) → {number}
Scales an 8-bit value to a 16-bit value. This is typically used for the alpha channel.
Parameters:
| Name | Type | Description |
|---|---|---|
val |
number
|
The 8-bit value to scale (0-255). |
The corresponding 16-bit value.
number