`

java 上传图片加个图片水印,文字水印的功能

    博客分类:
  • JAVA
阅读更多
public final class ImageUtils {
public ImageUtils() {

}

public final static String getPressImgPath(){
return ApplicationContext.getRealPath("/template/data/util/shuiyin.gif");
}

/**
* 把图片印刷到图片上
* @param pressImg -- 水印文件
* @param targetImg -- 目标文件
* @param x
* @param y
*/
public final static void pressImage(String pressImg, String targetImg, int x, int y) {
try {
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);

// 水印文件
File _filebiao = new File(pressImg);
Image src_biao = ImageIO.read(_filebiao);
int wideth_biao = src_biao.getWidth(null);
int height_biao = src_biao.getHeight(null);
g.drawImage(src_biao, wideth - wideth_biao - x, height - height_biao -y, wideth_biao,
height_biao, null);
// /
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) {
e.printStackTrace();
}
}

/**
* 打印文字水印图片
* @param pressText --文字
* @param targetImg -- 目标图片
* @param fontName -- 字体名
* @param fontStyle -- 字体样式
* @param color -- 字体颜色
* @param fontSize -- 字体大小
* @param x -- 偏移量
* @param y
*/

public static void pressText(String pressText, String targetImg, String fontName,int fontStyle, int color, int fontSize, int x, int y) {
try {
File _file = new File(targetImg);
Image src = ImageIO.read(_file);
int wideth = src.getWidth(null);
int height = src.getHeight(null);
BufferedImage image = new BufferedImage(wideth, height,
BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(src, 0, 0, wideth, height, null);
// String s="www.qhd.com.cn";
g.setColor(Color.RED);
g.setFont(new Font(fontName, fontStyle, fontSize));


g.drawString(pressText, wideth - fontSize - x, height - fontSize/2 - y);
g.dispose();
FileOutputStream out = new FileOutputStream(targetImg);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
} catch (Exception e) {
System.out.println(e);
}
}

public static void main(String[] args) {
pressImage("C:/shuiyin/shuiyin.gif", "c:/shuiyin/DSC02342.JPG", 20 ,20);
}
}
分享到:
评论

相关推荐

    java实现图片上传并添加水印效果(文字水印,蒙版,logo图片),自动进行文字大小行数位置匹配 ,文字自动换行

    通过以上这些知识点的结合运用,我们可以构建一个功能完善的Java应用,实现图片上传并添加自定义水印的效果,满足不同需求。这个过程既包括了基本的图像处理技术,也涵盖了Web服务和GUI设计的实践。

    java 图片水印 改变图片大小

    总结来说,Java提供了丰富的API来处理图片水印和大小改变,而Struts2则提供了强大的Web开发支持。结合这两者,我们可以构建出高效、灵活的图片处理服务。理解并熟练掌握这些技术,对于提升Java Web开发能力大有裨益...

    上传 预览 文字水印 图片水印

    综上所述,实现“上传预览文字水印图片水印”功能,需要结合前端的文件操作API、预览展示技术,后端的文件接收、处理和存储,以及可能的SSH远程操作。每个环节都涉及多方面的技术和安全考虑,确保了用户上传文件的...

    上传图片加水印(图片水印和文字水印)

    在标题“上传图片加水印(图片水印和文字水印)”中,我们讨论的核心是如何在用户上传图片时自动添加水印。描述指出这涉及一个后台设置功能,允许管理员自定义水印的样式,这意味着系统具有一定的灵活性和可配置性。...

    java给图片添加水印

    2. **创建水印工具类**:创建一个名为`WatermarkUtils`的Java类,包含添加文字水印和图片水印的方法。 - **添加文字水印**:首先读取原始图片,然后创建一个含有文字的透明图像(水印),设置合适的字体、颜色、...

    java 图片添加水印

    java 图片添加水印 图片叠加文字类 图片生成方法,如果需要在已有的图片叠加文字

    springboot实现上传图片添加水印

    在Spring Boot框架中实现图片上传并添加水印的功能,是一个常见的需求,特别是在开发涉及多媒体内容的Web应用时。下面将详细介绍这个过程,并涵盖相关的技术点。 首先,我们需要了解Spring Boot如何处理文件上传。...

    java批量上传加水印

    在Java编程环境中,批量上传加水印是一项常见的需求,尤其在图像处理或版权保护的场景中。本项目手工实现了这一功能,提供了不依赖第三方库的解决方案。以下将详细阐述实现这个功能所需的关键知识点。 首先,我们...

    java 图片压缩和加水印

    在Java编程环境中,图片压缩和加水印是两个常见的图像处理任务。这些功能在很多应用场景中都很重要,比如网站图片上传、社交媒体分享、数字资产管理等。下面将详细讲解这两个知识点,以及如何使用Java来实现。 首先...

    图片文字水印技术

    水印,可以对自己独特的东西添加水印,打上水印,别人就很难再盗版你的东西,高端大气上档次的,不仅可以水印上图片,也可以水印上文字,而且位置还是自定义的。

    文字图片加固定水印图片

    1. **水印生成**:在实现这个功能时,首先需要一个用户界面,让用户上传图片并输入水印信息,如文字内容、字体、颜色、大小、位置以及透明度。对于图片水印,用户可能还需要选择图片文件并调整其大小、位置和透明度...

    图片、文件上穿 uploadpicture 上传图片 uploadfile 上传文件 上传的图片可以盖文字或图片水印

    在此,我们将深入探讨图片上传、文件上传以及如何在上传的图片上添加文字或图片水印的技术细节。 首先,我们来看图片上传。在前端,这通常涉及到HTML5的`<input type="file">`元素,用户可以通过它选择本地的图片...

    文件上传(本地上传,oss上传加水印)

    另一种方式是上传图片后,通过OSS提供的图片处理API,例如阿里云的ImageService,对图片进行裁剪、旋转、添加文字水印或图像水印等操作。 在"必读.txt"和"oss-demo"这两个文件中,可能包含了具体的代码示例或步骤...

    图片上传添加水印(自定义水印位置与旋转方向)

    该工具类支持图片文件上传功能,自定义文字水印位置与旋转角度,自定义文字大小,也可根据图片大小进行文字自适应!

    服务器图片水印乱码字体库

    描述中提到的“图片上传后,添加水印乱码解决方法”暗示了解决方案可能包括在处理图片水印时对上传图片进行预处理,确保所有使用的文字都能被服务器上的字体库正确渲染。同时,"服务器添加字体库文件"这部分说明了...

    处理linux java图片中文字显示方块乱码

    java——图片字体显示方块问题处理 /usr/java/jdk1.7.0_80/jre/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf /usr/java/jdk1.7.0_80/lib/fonts/fallback msyhbd.ttf msyh.ttf wqy-microhei.ttf

    [其他类别]上传图片生成缩略图、图片水印、文字水印_7he7upload.zip

    这个压缩包文件"【其他类别】上传图片生成缩略图、图片水印、文字水印_7he7upload.zip"显然是一个关于图片处理的源码参考,它包含了解决三个关键问题的代码:生成缩略图、添加图片水印以及添加文字水印。接下来,...

    jsp添加图片水印程序

    综上所述,通过结合JSP、Java后端处理和jQuery Uploadify插件,我们可以创建一个功能完善的图片水印系统,既满足了图片上传的需求,又实现了高效、美观的水印添加。在实际应用中,还可以考虑进一步优化,比如增加...

    图片添加文字水印

    本知识点将深入探讨如何使用Java语言处理图片,特别是如何在图片上添加文字水印,并通过MultipartFile类型接收文件,最后将其转换为InputStream输入流。这个过程涉及到Java的IO流、图像处理以及文件上传的多个关键点...

    动态图片实现添加水印功能

    本文将深入探讨如何使用Java编程语言来实现这个功能,特别关注如何在动态GIF图片上添加水印。 首先,我们需要了解动态GIF图片的工作原理。GIF是一种支持多帧的图像格式,每一帧可以视为一个静态图片,这些帧按照...

Global site tag (gtag.js) - Google Analytics