`
alyouge
  • 浏览: 193692 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

图片加水印

    博客分类:
  • j2ee
阅读更多
public byte[] pressImage(String waterImgPath, byte[] targetImg) throws Exception {
        try {
            InputStream is = new ByteArrayInputStream(targetImg);
            Image src = ImageIO.read(is);
            int width = src.getWidth(null);
            int height = src.getHeight(null);
            BufferedImage image = new BufferedImage(width, height,
                    BufferedImage.TYPE_INT_RGB);
            Graphics2D g = image.createGraphics();
            g.drawImage(src, 0, 0, width, height, null);

            // 水印文件
            File waterFile = new File(waterImgPath);
            Image waterImg = ImageIO.read(waterFile);
            int w = waterImg == null ? 0 : waterImg.getWidth(null);
            int h = waterImg == null ? 0 : waterImg.getHeight(null);

            g.setComposite(AlphaComposite
                    .getInstance(AlphaComposite.SRC_OVER, 0.2f));
            int sw = (width % w) /(width / w + 1);//填充水印图片横向间距
            int sh = (height % h) /(height / h + 1);//填充水印图片纵向间距
            for(int i = sw; i + w + sw <= width; i += w + sw) {
                for (int j = sh; j + h + sh <= height; j += h + sh) {
                    g.drawImage(waterImg, i, j, null);
                }
            }

            g.dispose();

            ByteArrayOutputStream out = new ByteArrayOutputStream();
            ImageIO.write(image, "jpg", out);
            return out.toByteArray();
        } catch (Exception e) {
            e.printStackTrace();
            throw e;
        }
    }
分享到:
评论

相关推荐

    C# 图片添加水印(图片或者文字)

    在C#编程中,添加水印到图片是一项常见的任务,特别是在设计软件或处理图像的应用程序中。本示例主要关注如何使用C#和WPF(Windows Presentation Foundation)技术来实现这个功能,既可以添加图片水印,也可以添加...

    springboot实现上传图片添加水印

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

    易语言图片加水印

    在“易语言图片加水印”这个主题中,我们主要探讨如何利用易语言来实现对图片添加水印的功能。水印通常用于保护版权,或者为图像增添个性化的标识。 首先,我们要理解什么是水印。水印是图片处理中的一个常见概念,...

    java给图片添加水印

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

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

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

    QT给图片加水印(pro工程+代码)

    QT给图片加水印是一种常见的图像处理操作,用于在图片上添加标识或版权信息,防止未经授权的使用。本文将深入探讨如何使用Qt框架实现这一功能,包括必要的编程知识和步骤。 首先,Qt是一个跨平台的应用程序开发框架...

    PHP为原图片添加水印图片

    使用PHP,为图片添加水印图片。 缩放源水印图片,使其最大宽/高度不能超过原图片。

    html2canvas 网页对图片加水印

    在网页上对图片添加水印,通常是为了防止图片被未经授权的用户盗用,或者为了在分享的图片上显示一些特定的信息,如日期、用户标识或公司Logo。 使用HTML2Canvas添加水印的过程分为以下几个步骤: 1. **引入库**:...

    delphi实现给图片加水印2用ImageEn控件

    ### Delphi 实现给图片添加水印:使用 ImageEn 控件 #### 背景介绍 在 Delphi 开发环境中,实现对图像处理的需求时,经常会遇到需要为图片添加水印的情况。添加水印不仅可以保护图片版权,还能提高品牌识别度。本文...

    winform 图片加水印文字和水印图片

    总的来说,这个WinForm应用提供了一个方便的工具,可以对图片进行多种操作,如加水印(文字和图片)、等比例缩放和压缩,这对于日常需要处理图片的工作非常实用。通过理解并应用GDI+的图形处理技术,开发者可以...

    易优批量图片加水印插件

    易优批量图片加水印插件是一款针对易优CMS(EyouCMS)设计的专业插件,主要用于提升网站的用户体验和优化网页加载速度。在互联网环境中,网页加载速度是影响用户体验的关键因素之一,尤其是当页面中包含大量图片时,...

    给图片加水印

    VB(Visual Basic)是一种由微软开发的编程环境,它提供了简单易用的图形用户界面(GUI)创建工具和丰富的功能,使得创建给图片加水印的小程序变得容易。下面我们将深入探讨如何使用VB来实现这个功能,以及涉及到的...

    超好用的图片加水印处理工具

    为了解决这一问题,市场上应运而生了一种专门用于在图片上添加水印的工具,本文将详细介绍这款“超好用的图片加水印处理工具”的功能特点以及如何使用它来保护您的图片版权。 首先,要理解什么是图片加水印处理工具...

    Winform图片加水印

    通过以上步骤,你就可以在Winform应用中实现一个功能完善的图片加水印工具,包括图片和文字水印,以及透明度和字体调整。这个过程涉及了Windows Forms控件的使用、图像处理和图形绘制,是.NET框架中基础但实用的技能...

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

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

    java图片加水印工具类

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

    微信小程序用Canvas给图片加水印,拼接图片,制作名片PHelper-master.zip

    1. **给图片加水印**: 在这个项目中,开发者可能会使用`wx.createSelectorQuery()`来选取Canvas元素,然后通过`canvasContext.drawImage()`方法加载图片并将其绘制到Canvas上。接着,利用`canvasContext....

    java 图片添加水印

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

    C#实现图片加水印

    在C#编程中,给图片添加水印是一项常见的...总之,C#提供了一套完整的API来处理图像和水印,使得在程序中实现图片加水印变得简单易行。通过理解并熟练运用上述技术,开发者可以轻松地为自己的项目添加这一实用功能。

    Vb图片加水印组件.rar

    "Vb图片加水印组件.rar" 提供了一个实用的技术方案,帮助开发者实现这一功能。该组件使得在图片上叠加图片或文字水印变得简单,通过VB的内置控件Picture1.Picture属性进行操作,并能将处理后的图片保存为新的格式。 ...

Global site tag (gtag.js) - Google Analytics