1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| public static Image increaseImageSize(Image image, int width, int height) {
int middleOriginalX = image.getImageData().width / 2;
int middleOriginalY = image.getImageData().height / 2;
int middleCopyX = width / 2;
int middleCopyY = height / 2;
int offsetX = middleCopyX - middleOriginalX ;
int offsetY = middleCopyY - middleOriginalY ;
ImageData idOriginal = image.getImageData();
ImageData idCopyPlusGrande= new ImageData(width,height,idOriginal.depth,idOriginal.palette);
for(int i = 0 ; i < idCopyPlusGrande.width ; i++) {
for(int j = 0 ; j < idCopyPlusGrande.height ; j++) {
if (i>= offsetX && j >= offsetY
&& (i-offsetX) < idOriginal.width
&& (j-offsetY) < idOriginal.height) {
idCopyPlusGrande.setAlpha(i, j, idOriginal.getAlpha(i-offsetX, j-offsetY));
idCopyPlusGrande.setPixel(i, j, idOriginal.getPixel(i-offsetX, j-offsetY));
}
}
}
Image result = new Image(Display.getDefault(),idCopyPlusGrande);
return result;
} |
Partager