Warning: session_start(): open(/var/lib/php/sessions/sess_tothg51tnq4tvdtbtiallmrbt3, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
static GrabbableRGBBytePixels grabbableRGBBytePixels(BufferedImage img) {
Raster raster = img.getRaster();
SampleModel _sampleModel = raster.getSampleModel();
if (!_sampleModel instanceof PixelInterleavedSampleModel) null;
PixelInterleavedSampleModel sampleModel = cast _sampleModel;
DataBufferByte dataBuffer = cast raster.getDataBuffer();
assertEquals(1, dataBuffer.getNumBanks());
assertEquals(DataBuffer.TYPE_BYTE, dataBuffer.getDataType());
// Let's at this point assume the raster data is what we
// think it is... (TODO: test on unusual platforms)
int w = img.getWidth(), h = img.getHeight();
int pixelStride = sampleModel.getPixelStride();
int scanlineStride = sampleModel.getScanlineStride();
byte[] pixels = dataBuffer.getData();
int offset = dataBuffer.getOffset();
int translateX = raster.getSampleModelTranslateX();
int translateY = raster.getSampleModelTranslateY();
offset += -translateX-translateY*scanlineStride;
var imageModel = img.getColorModel();
if (imageModel != ColorModel.getRGBdefault()) {
assertEquals(w*3, scanlineStride);
assertEquals(1, pixelStride);
int n = pixels.length;
byte[] newPixels = new[n];
for i to n:
newPixels[i] = imageModel.getRGB(pixels[i] & 0xff);
pixels = newPixels;
}
ret GrabbableRGBBytePixels(pixels, w, h, offset, scanlineStride, pixelStride);
}