`
xudongcsharp
  • 浏览: 475229 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java 图片加水印

    博客分类:
  • Java
 
阅读更多
 /**
     * 打印文字水印图片
     * @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.***.com.cn";
            g.setColor(Color.BLUE);
            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);
        }
    }
	
	/**
	  * 把图片印刷到图片上
	  * @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();
	        }
	    }
public static void main(String[] args) {
		pressText("版权所有","c:/test.jpg", "heavy", Font.BOLD, 3, 30, 120, 20);
pressImage("C:/shuiyin/shuiyin.gif", "c:/shuiyin/DSC02342.JPG", 20 ,20);
	}




原文出自http://blog.csdn.net/gooogledev/article/details/1611254
分享到:
评论

相关推荐

    java 图片添加水印

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

    java给图片添加水印

    在Java编程语言中,给图片添加水印是一项常见的任务,特别是在网站开发中,为了保护版权或者标识来源,经常需要在用户上传的图片上添加特定的文字或图像水印。以下将详细讲解如何使用Java来实现这一功能。 首先,...

    java图片加水印(适应铺满)

    开发一个项目,需要用到图片加水印的功能,这里考虑使用后台加水印,在上传的时候或者回显到页面时候,取图片文件的流数据,进行加水印在返回流数据就行了,非常简单,不懂可以问我

    java图片加水印工具类

    总之,这个“java图片加水印工具类”是一个实用的组件,可以帮助Java开发者轻松地在图片上添加水印,提升工作效率,同时保持代码的整洁和可维护性。无论你是进行个人项目还是企业级应用,它都能成为一个有价值的辅助...

    java 图片水印 改变图片大小

    在Java编程领域,图片处理是一项常见的任务,包括添加水印、改变图片大小等。这里我们将深入探讨这些知识点,以及如何在Struts2框架下实现它们。 首先,让我们了解"图片水印"。水印通常用于保护版权或者为图片增加...

    Java图片加水印,支持旋转和透明度设置

    util实现Java图片水印添加功能,有添加图片水印和文字水印,可以设置水印位置,透明度、设置对线段锯齿状边缘处理、水印图片的路径,水印一般格式是gif,png,这种图片可以设置透明度、水印旋转等,可以参考代码加以...

    Java为图片添加水印功能.rar

    Java为图片添加水印功能,这个水印类的操作比较实用,不但可以旋转水印图像,还可设置其水印图片的透明度,使其与原图融为一体,给图片添加水印,可以设置图片水印的角度,设置对线段的锯齿状边缘处理,第一参数->...

    java 水印(水印适应图片大小,但个别图片太小不支持)

    在Java编程中,添加水印是一项常见的图像处理任务,它涉及到图像处理库的使用和算法设计。本知识点主要探讨如何在Java中实现自适应图片大小的水印功能,以及遇到图片过小时的处理策略。 首先,我们需要理解水印的...

    java图片加水印及图片加解密

    1. **图片加水印**: - **基本概念**:水印是一种在图片上添加不可见或可见的标记,用于证明所有权、版权或者为图片增添额外信息。在Java中,可以通过Java的图像处理库如Java AWT或JavaFX来实现。 - **实现步骤**...

    JAVA图片加水印

    很好的logo水印 utils

    基于Java给图片添加文字或图片水印

    总之,通过Java进行图像处理,尤其是添加水印,需要理解图像的基本概念,熟练运用`BufferedImage`和`Graphics2D`,并掌握相关的绘图技巧。这个项目对于学习Java编程和图像处理技术的学生来说,无疑是一次宝贵的实践...

    JAVA处理图片 加文字水印以及灰色透明背景

    JAVA处理图片 加文字水印以及灰色透明背景,处理图片。

    Java图片加水印,支持旋转和透明度设置.rar

    这个压缩包文件“Java图片加水印,支持旋转和透明度设置.rar”包含了一个实现此功能的示例代码或者库。下面我们将深入探讨Java如何处理图片加水印,以及如何实现旋转和透明度的调整。 首先,Java提供了Java ...

    java对图片添加水印的工具类

    添加文字水印的工具类,自己去下JAR包,MAVEN的网站http://mvnrepository.com/

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

    在Java编程中,实现图片上传并添加水印效果是一项常见的任务,这通常涉及到图像处理、图形用户界面(GUI)和文件I/O等多个方面。在这个项目中,我们将关注以下几个关键知识点: 1. **Java图像处理库**:Java标准库...

    Java图片加水印,支持旋转和透明度设置.zip

    Java图片加水印,支持旋转和透明度设置.zip

    Java图片添加水印的模块含源代码

    Java图片处理技术是软件开发中常见的一种需求,特别是在创建、编辑或分享图像的应用程序中。在本主题中,我们将深入探讨如何使用Java实现图片添加水印的功能,这通常用于版权保护或者品牌宣传。水印可以是文字、图像...

    Java图片加水印,支持旋转和透明度设置.7z

    这个压缩包文件“Java图片加水印,支持旋转和透明度设置”提供了一个解决方案,帮助开发者实现这一功能。让我们详细探讨一下这个话题。 首先,我们要理解水印的基本概念。水印通常是一个文字、图标或者图形,用于...

Global site tag (gtag.js) - Google Analytics