我想使用java编程语言制作类似acdsee的程序。这个程序有一些属性,像这样,它能够黑白图像,能够镜像和划线。但作为第一步,我只能添加和删除图像,其他步骤我该怎么做?我可以使用任何库吗?
感谢您的帮助和任何想法。
答案 0 :(得分:3)
有许多库可用于图像处理,例如here您将找到一个用于调整大小的库,here's另一个用于图像处理的强大程序。库的使用可能取决于您的需要。我会给你一些简单的东西。将彩色图像转换为灰度图像的最简单方法是将彩色图像简单地绘制为灰度级BufferedImage。代码示例如下
BufferedImage image = new BufferedImage(width, height,
BufferedImage.TYPE_BYTE_GRAY);
Graphics g = image.getGraphics();
g.drawImage(colorImage, 0, 0, null);
g.dispose();
如果您只是搜索它,可以使用许多此类示例。 我提到的用于学习图像和图形的书之一是here。它基本上是一个富客户端开发教程。我建议你阅读这本教科书。前几章肯定会给你一些基础知识。 AlphaComposite再次成为有用的课程之一。上面提到的这些书非常有趣。
答案 1 :(得分:1)
您可以使用vini建议的第三方库,但Java已经包含一个非常强大的API来处理2D图形。使用标准API可以执行缩放,镜像,旋转,过滤(例如模糊,锐化或转换为黑白)以及以其他方式合成图像等操作。
请参阅Oracle Java教程中的Trail: 2D Graphics。
答案 2 :(得分:0)
您可以在本书中找到一些示例:http://filthyrichclients.org