终于搞定了,直接贴上代码:
/**
* 待合并的两张图必须满足这样的前提,如果水平方向合并,则高度必须相等;如果是垂直方向合并,宽度必须相等。
* mergeImage方法不做判断,自己判断。
*
* @param img1
* 待合并的第一张图
* @param img2
* 带合并的第二张图
* @return 返回合并后的BufferedImage对象
* @throws IOException
*/
private static BufferedImage mergeImage(BufferedImage img1, BufferedImage img2)
throws IOException {
int w1 = img1.getWidth();
int h1 = img1.getHeight();
int w2 = img2.getWidth();
int h2 = img2.getHeight();
// 从图片中读取RGB
int[] ImageArrayOne = new int[w1 * h1];
ImageArrayOne = img1.getRGB(0, 0, w1, h1, ImageArrayOne, 0, w1); // 逐行扫描图像中各个像素的RGB到数组中
int[] ImageArrayTwo = new int[w2 * h2];
ImageArrayTwo = img2.getRGB(0, 0, w2, h2, ImageArrayTwo, 0, w2);
// 生成新图片
BufferedImage DestImage = null;
DestImage = new BufferedImage(w1,h1,BufferedImage.TYPE_INT_RGB);
DestImage.setRGB(0, 0, w1, h1, ImageArrayOne, 0, w1); // 设置上半部分或左半部分的RGB
// 加载水印图片文件
Graphics2D resizedG = DestImage.createGraphics();
resizedG.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP,(float) 1));
resizedG.drawImage(img2, w1 / 2 - w2 / 2, h1 / 2 - h2 / 2, null);
resizedG.dispose();
// 画图
return DestImage;
}
分享到:
相关推荐
本示例探讨了如何将多张图片重叠在一起,包括处理透明度,特别是PNG等支持透明度的图像格式。这是一个关键的图像处理技术,因为可以创建复杂的视觉效果或者进行图像合成。 首先,我们需要引入Java的`javax.imageio`...
在Java编程语言中,将两张图片合成在一起是一个常见的图像处理任务。这个过程涉及到对图像文件的读取、处理以及合并,通常使用Java的内置库如`java.io`和`javax.imageio`。在这个场景中,`FileInputStream`用于读取...
在Java编程环境中,将多张PNG、JPG等格式的静态图片转换为动态GIF图像是一项常见的需求。这个过程涉及到图像处理和动画制作的技术。在本文中,我们将深入探讨如何利用Java来实现这一功能,同时关注如何设置各种参数...
在java中通过ImageMagick安装包和im4java.jar把其他格式图片如HEIC转换为PNG,JPEG等常用格式图片。内有安装操作步骤及编码内容。亲测有效。 场景运用:ios操作系统在前端图片格式上传中。已普遍采用HEIC格式图片。...
以下是一些关于如何在Java中处理PNG图片透明度的关键知识点: 1. **Java图像库**: Java标准库提供了`java.awt`和`javax.imageio`包,用于读取、写入和操作图像。例如,`BufferedImage`类是处理图像的主要类,它支持...
在Java编程环境中,将图片列表合并转换为PDF文档是一项常见的任务,特别是在报告生成、文档整理或数据可视化等场景。这个示例将详细讲解如何通过Java实现这一功能,包括必要的库引用、代码实现以及可能遇到的问题。 ...
通过快速轮动播放来实现,少则几帧,多则几十帧,为了方便管理图片和减少图片文件总的大小,往往需要把这些帧的图像合并到一个文件中-----即把N个大小和格式完全相同的png图片排列合并为一个大的png图片。
在Java编程语言中,将多张图片合成一张图片是一项常见的图像处理任务,广泛应用于各种应用场景,如社交媒体拼图、报告生成、数据可视化等。要实现这个功能,我们需要使用到Java的图像处理库,如Java AWT(Abstract ...
"多张PNG小图合并PNG大图小工具"是一个实用程序,它允许用户将多个PNG格式的小图像整合成一个单一的PNG大图像。这个工具的目的是简化工作流程,减少手动操作,并可能提高效率。 PNG(Portable Network Graphics)是...
6. **保存或显示图片**:解码后的`BufferedImage`对象可以直接在Java环境中显示,也可以通过`ImageIO.write()`方法保存为新的PNG文件,这样就可以在任何支持PNG的平台上正常显示了。 7. **异常处理**:在整个过程中...
Java处理PNG透明性总结的几种方法,好用Java处理PNG透明性总结的几种方法,好用Java处理PNG透明性总结的几种方法,好用Java处理PNG透明性总结的几种方法,好用Java处理PNG透明性总结的几种方法,好...
wmf格式图片转png完整java项目示例,包含所需jdk(jdk1.7.0_80)及完整jar包。 一,实现功能: 1,wmf文件转png文件; 2,wmf格式的base64压缩数据转png图片(带解压base64数据功能); 二,包含的完整jar: batik-...
PngEncoder.java针对java平台处理png压缩算法
本篇文章将深入探讨如何在Java中实现这些功能,特别是针对PNG格式的图片,因为PNG格式支持透明度,但在处理过程中可能会出现背景变黑的问题。 首先,我们需要引入Java的`java.awt`和`javax.imageio`包,它们提供了...
本示例中,我们探讨的是如何使用Java编程语言将PDF文件转换为PNG图片格式。这在很多场景下非常有用,比如网页预览、移动端展示或者进行图像处理等。Java通过库如iText7提供了这样的功能。 iText7是一个强大的PDF...
Java实现png格式图片转换成jpg格式图片的方法 Java实现png格式图片转换成jpg格式图片的方法是广泛应用于图像处理领域的技术之一。该方法主要涉及到Java文件读写及图形创建等相关操作技巧。通过本文,我们将详细介绍...
java excel中表格导成png图片,整理供大家参考
在Java编程中,生成PNG透明图片的缩略图是一项常见的任务,特别是在开发图形用户界面、网站或移动应用时。PNG格式因其支持透明度而受到欢迎,但缩略图的生成需要考虑保持图像质量和透明效果。以下是一些关于如何在...
在C#编程环境中,将多张图片合并成一张图片是一个常见的图像处理任务,尤其是在报表生成、拼图制作或社交媒体分享等方面。在这个项目中,我们使用Visual Studio 2013作为开发工具,通过C#语言来实现这个功能。以下是...
这篇关于“png图片合并”的内容提供了一个简单的代码实例,用于将16张小的PNG图片合并成一张大的PNG图片。PNG(Portable Network Graphics)是一种无损压缩的位图格式,它支持透明度,并且在互联网上广泛使用。 PNG...