我有这样一段代码,其中我获取了一个InputStream
并创建了一个图片:
Part file;
// more code
try {
InputStream is = file.getInputStream();
File f = new File("C:\\ImagenesAlmacen\\QR\\olaKeAse.jpg");
OutputStream os = new FileOutputStream(f);
byte[] buf = new byte[1024];
int len;
while ((len = is.read(buf)) > 0) {
os.write(buf, 0, len);
}
os.close();
is.close();
} catch (IOException e) {
System.out.println("Error");
}
问题是我必须在从InputStream
创建图像之前调整其大小。
那么如何调整从InputStream
获取的图像大小并创建调整大小后的图像。我想将图像的最大边设置为180像素,然后按比例调整其他边。
示例:
图像 = 289px * 206px
调整大小后的图像 = 180px* 128px
OutputStream
。至于你问题的另一部分,你可以在这里找到答案:https://dev59.com/inVC5IYBdhLWcg3wlyQo - blgtos.close();
之前添加os.flush();
。 - blgtflush
在这种情况下实际上是一个空方法,write
会自己进行本地调用。 - blgt