我有以下代码:
val resizedImage = Scalr.resize(inputImage, Scalr.Method.QUALITY, Mode.FIT_TO_WIDTH, width)
val result = ImageIO.write(bufferedImage, "jpeg", outputStream)
我提供的BufferedImage总是来自我读过的PNG文件,然后使用Scalr库进行处理以调整其大小。我不认为Scalr部分真的很有趣但我把它包括在内以防......
此代码在大多数情况下都能正常工作,但对于某些图像(非随机),它会不断返回false。使用format = png似乎总是有效,而jpeg / jpg似乎在大多数情况下都有效。
有人可以解释一下为什么我的某些图片可能无法以jpg格式编写吗?我该怎么做才能确保正确地写出这些图像?
我甚至尝试通过添加此lib来增加对JPG的JVM支持。它起到了支持TIFF的作用,但它无助于解决我的JPG问题:https://github.com/haraldk/TwelveMonkeys
以下是发生问题的PNG:https://files.stample.co/stample-1478606412313-imagemagick-pdfPreview1484802533410454080.png