Skip to content

Commit

Permalink
Using TYPE_INT_ARGB instead of TYPE_4BYTE_ABGR
Browse files Browse the repository at this point in the history
  • Loading branch information
smartcmd committed Jan 14, 2023
1 parent 5a0f2e4 commit 330b16e
Showing 1 changed file with 5 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -354,7 +354,7 @@ protected BufferedImage[][] splitImage(BufferedImage image, int height, int widt
//填充模式
//预先将图片拉伸到指定大小,提高画面质量
var scaledInstance = image.getScaledInstance(width * 128, height * 128, Image.SCALE_SMOOTH);
var newImage = new BufferedImage(width * 128, height * 128, BufferedImage.TYPE_4BYTE_ABGR);
var newImage = new BufferedImage(width * 128, height * 128, BufferedImage.TYPE_INT_ARGB);
var gr = newImage.getGraphics();
gr.drawImage(scaledInstance, 0, 0, null);
gr.dispose();
Expand All @@ -363,7 +363,7 @@ protected BufferedImage[][] splitImage(BufferedImage image, int height, int widt
BufferedImage[][] imgs = new BufferedImage[width][height];
for (int x = 0; x < width; ++x) {
for (int y = 0; y < height; ++y) {
imgs[x][y] = new BufferedImage(128, 128, BufferedImage.TYPE_4BYTE_ABGR);
imgs[x][y] = new BufferedImage(128, 128, BufferedImage.TYPE_INT_ARGB);
Graphics2D gr1 = imgs[x][y].createGraphics();
gr1.drawImage(image, 0, 0, 128, 128, 128 * x, 128 * y, 128 * x + 128, 128 * y + 128, null);
gr1.dispose();
Expand All @@ -375,7 +375,7 @@ protected BufferedImage[][] splitImage(BufferedImage image, int height, int widt
//居中模式

//新的正方形图片
var fullImage = new BufferedImage(width * 128, height * 128, BufferedImage.TYPE_4BYTE_ABGR);
var fullImage = new BufferedImage(width * 128, height * 128, BufferedImage.TYPE_INT_ARGB);

//若分配的地图大小不够装下整个图片,需要缩放图片
if (image.getHeight() > fullImage.getHeight() || image.getWidth() > fullImage.getWidth()) {
Expand All @@ -388,7 +388,7 @@ protected BufferedImage[][] splitImage(BufferedImage image, int height, int widt
k = (double) fullImage.getWidth() / (double) image.getWidth();
}

var newImage = new BufferedImage((int) (k * image.getWidth()), (int) (k * image.getHeight()), BufferedImage.TYPE_4BYTE_ABGR);
var newImage = new BufferedImage((int) (k * image.getWidth()), (int) (k * image.getHeight()), BufferedImage.TYPE_INT_ARGB);
var gr = newImage.getGraphics();
gr.drawImage(image.getScaledInstance(newImage.getWidth(), newImage.getHeight(), Image.SCALE_SMOOTH), 0, 0, null);
gr.dispose();
Expand Down Expand Up @@ -433,7 +433,7 @@ protected BufferedImage[][] splitImage(BufferedImage image, int height, int widt
BufferedImage[][] imgs = new BufferedImage[width][height];
for (int x = 0; x < width; ++x) {
for (int y = 0; y < height; ++y) {
imgs[x][y] = new BufferedImage(128, 128, BufferedImage.TYPE_4BYTE_ABGR);
imgs[x][y] = new BufferedImage(128, 128, BufferedImage.TYPE_INT_ARGB);
Graphics2D gr2 = imgs[x][y].createGraphics();
gr2.drawImage(fullImage, 0, 0, 128, 128, 128 * x, 128 * y, 128 * x + 128, 128 * y + 128, null);
gr2.dispose();
Expand Down

0 comments on commit 330b16e

Please sign in to comment.