Base64修剪我的缩略图

时间:2016-03-08 00:50:34

标签: java imgscalr

我有一些问题,我很难解决。

我制作了一个简短的代码段:

BufferedImage image = ImageIO.read(new ByteArrayInputStream(payload));
BufferedImage thumbImg = Scalr.resize(image, Method.QUALITY,
    Mode.AUTOMATIC, WIDTH, HEIGHT, Scalr.OP_ANTIALIAS);

ByteArrayOutputStream baos = new ByteArrayOutputStream();
Base64OutputStream b64s = new Base64OutputStream(baos);
ImageIO.write(thumbImg, DATA_TYPE, b64s);
return baos.toByteArray();

缩小返回的缩略图/字节。它删除底部并显示一个透明区域。

我想要的是缩小图像而不删除它的某些部分。

这样做的目的是将base64返回到我的html项目。

1 个答案:

答案 0 :(得分:1)

是的..我刚刚改变了创建base64输出的逻辑。

而不是在Apache Commons Framework的Base64OutputStream中编写。

c

我这样做了

ByteArrayOutputStream baos = new ByteArrayOutputStream();
Base64OutputStream b64s = new Base64OutputStream(baos);
ImageIO.write(thumbImg, DATA_TYPE, b64s);
return new ThumbnailPayload(baos.toByteArray()));

目前正在运作。但是,如果你们可以在白天结束之前提出另一种解释方式,那将是非常棒的和有用的。