首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图像压缩java

图像压缩java
EN

Stack Overflow用户
提问于 2011-04-12 14:03:12
回答 3查看 2.7K关注 0票数 1

我想通过网络套接字(java.net)传输图像.Where我能找到示例代码吗

在java..Say中压缩缓冲图像例如,如果我的图像文件大约200kb,我希望

它将被转换为100kb..So格式,这样传输速度会快一点。

谢谢。。

EN

回答 3

Stack Overflow用户

发布于 2011-04-12 14:11:27

据我所知,对图像进行无损压缩的最佳方法是使用Java中的图像库可以编写的PNG。

如果你需要更小的图像,你需要使用有损压缩。一种简单的方法是使用JPEG,您可以调低质量,直到获得您想要的速率。

你也可以先将图像缩小到原始尺寸的1/2或1/3,从而得到一个小得多的图片,然后在另一端进行放大。这将用于快速传输,然后当运动稳定下来时,您可以传输完整的图像。

票数 2
EN

Stack Overflow用户

发布于 2011-04-12 17:12:53

做到这一点的方法实际上取决于你想要做什么。

如果你想传输图像作为一些质量损失的代价,你可以将它们保存为JPEG (在内存流中),传输这些字节数据,并在另一边再次读取图像。一个典型的200KB图像可以减少到20-50K,产生的质量很好。

阅读The Java Image I/O API可能会对此有所帮助。

如果您绝对想保留原始字节,或者想要更通用的解决方案,只需使用一些压缩库,如Gzip来压缩/解压缩您的数据。首先,您可以使用Compressing and Decompressing Data Using Java APIs作为一个很好的开始。

票数 1
EN

Stack Overflow用户

发布于 2011-04-12 14:06:46

您可以使用ImageIO.write()以支持的压缩图像格式流式传输BufferedImage,例如jpg (有损压缩)或png (无损压缩)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5631011

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档