java.lang.Object
javafx.scene.image.PixelFormat<T>
javafx.scene.image.WritablePixelFormat<T>
public abstract class WritablePixelFormat<T extends Buffer> extends PixelFormat<T>
A
PixelFormat
object representing a pixel format that can store
full colors and so can be used as a destination format to write pixel
data from an arbitrary image.- Since:
- JavaFX 2.2
-
Nested Class Summary
Nested classes/interfaces inherited from class javafx.scene.image.PixelFormat
PixelFormat.Type
-
Method Summary
Modifier and Type Method Description boolean
isWritable()
Returns true iff thisPixelFormat
object can convert color information into a pixel representation.abstract void
setArgb(T buf, int x, int y, int scanlineStride, int argb)
Stores the appropriate pixel data that represents the specified 32-bit integer representation of a color in the buffer at the specified coordinates.Methods inherited from class javafx.scene.image.PixelFormat
createByteIndexedInstance, createByteIndexedPremultipliedInstance, getArgb, getByteBgraInstance, getByteBgraPreInstance, getByteRgbInstance, getIntArgbInstance, getIntArgbPreInstance, getType, isPremultiplied
-
Method Details
-
isWritable
public boolean isWritable()Description copied from class:PixelFormat
Returns true iff thisPixelFormat
object can convert color information into a pixel representation.- Specified by:
isWritable
in classPixelFormat<T extends Buffer>
- Returns:
- true iff this
PixelFormat
can convert colors to pixel data
-
setArgb
Stores the appropriate pixel data that represents the specified 32-bit integer representation of a color in the buffer at the specified coordinates. The 32-bit integer will contain the 4 color components in separate 8-bit fields in ARGB order from the most significant byte to the least significant byte. The buffer should be positioned to the start of the pixel data such thatbuf.get(0)
would return the pixel information for the pixel at coordinates(0, 0)
. ThescanlineStride
parameter defines the distance from the pixel data at the start of one row to the pixel data at the start of the immediately following row at the next higher Y coordinate. Usually,scanlineStride
is the same as the width of the image multiplied by the number of data elements per pixel (1 for the case of the integer and indexed formats, or 3 or 4 in the case of the byte formats), but some images may have further padding between rows for alignment or other purposes.Color components can be composed into an integer using the following sample code:
int argb = ((alpha << 24) | (red << 16) | (green << 8) | (blue );
- Parameters:
buf
- the buffer of pixel datax
- the X coordinate of the pixel to be ready
- the Y coordinate of the pixel to be readscanlineStride
- the number of buffer elements between the start of adjacent pixel rows in the bufferargb
- a 32-bit value with the color to be stored in the pixel in a format similar to theType.INT_ARGB
pixel format
-