java技术读取图片的分辨率值,单位为dpi

最近项目需要,对上传的图片需要获取并判断它的dpi值是否合格。右键单击图片,查看其属性,点击详细信息,可以看到图片的长宽(像素),以及水平、垂直分辨率(dpi),当然这种方式仅限于jpg图片,其他格式的图片可以使用ps查看。

从网上查了很多资料,很多人对分辨率的理解就是图片的长宽,我不是专门研究图片的,所以概念上不作辩论,但图片属性和ps显示的分辨率值单位均为dpi,长宽是另外的。

我在网上找到个apache的开源类——Sanselan(sanselan-0.97-incubator.jar),用简单的java代码试了一下,可以准确地读到dpi值,用了一个ImageInfo类,我用的InputStream实例化的ImageInfo。可以用到Uedit上传图片时,用Uedit提供的图片输入流实例化ImageInfo类,对上传的合格图片,有的dpi值读到却是-1,就是失败了,希望有使用Sanselan经验的人指点迷津。


拉莫斯之舞
浏览 2833回答 0
0回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java