有没有办法检查一下renderOp是否损坏而没有呈现它?
我有一个用户上传图片的网站,我需要验证它不是一个损坏的图像。目前我可以通过以下方式做到这一点:
try{
RenderedOp imageOp = JAI.create("stream", inputStream);
imageOp.getRendering();
} catch (Exception e) {
//Image is corrupt/can't be rendered
}
有不同的方式吗?渲染花费的时间比我想要的要长,这就是我要问的原因。
答案 0 :(得分:1)
我认为查看图像是否有效的唯一方法是渲染它并查看返回的值是否为null,这意味着它无法呈现。或者它应该抛出异常,就像你一样。渲染图像的方法有很多,比如getHeight和getWidth。