读书频道 > 网站 > 网页设计 > Java数字图像处理:编程技巧与应用实践
2.2.3 常见问题举例
15-12-08    下载编辑
收藏    我要投稿   
本书分为两大部分,其中第一部为前三章,主要介绍Java Swing编程的基础知识。第二部分是本书的核心内容,系统全面地介绍图像处理的各种方法与常见应用场景编程实现。如果你已经对Java语言和Java Swing有基本的立即去当当网订购

当笔者初次接触Java Image API时,在学习过程中遇到了各种各样的问题。下面整理总结一下初学者经常遇到的问题。

1)图像格式支持。很多人会用Java Image API来读取tiff文件,可惜这种格式并不被支持,在JDK6中,Java ImageIO类只支持几种常见的图像格式(PNG、JPG、GIF、BMP),其他均不支持。

2)透明通道的支持与文件保存。如果BufferedImage对象为ARGB格式,说明支持透明通道,最佳的保存格式为PNG格式,否则会造成图像信息丢失,保存失真。

3)加载图像资源文件。很多人不知道如何加载图像资源文件,笔者最喜欢的做法是把要使用的图像文件与Class文件放在同一个package中,然后通过如下代码加载:

java.net.URL imageURL = this.getClass().
                           getResource("lena.jpg");
BufferedImage bi = ImageIO.read(imageURL);

4)处理结果显示的像素里有大片的白点或黑白斑点,最可能的原因在于你的RGB像素值取值范围超过了[0~255],请仔细检查。

5)如何在BufferedImage对象上绘制各种几何形状与文字等信息?使用如下代码即可:

Graphics2D g2 = image.createGraphics();  // 获取绘制引擎
g2.draw(...);     //绘制几何形状Shape

6)如何获取图像的位深度?通常位深度(bit depth)与图像存储像素字节位数有关系。

深度为16位通常的存储格式为RGB,前两个通道red与green各占5位,最后一个blue通道占6位,总计16位两个字节,深度为24位通常的存储格式为RGB,分别占8位,总计三个字节,深度为32位通常包含透明通道,且为ARGB格式,每个通道占1个字节,总共32位,4个字节。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站