`

图片水印

 
阅读更多
public final class ImageUtils {   
    /**  
     * 图片水印  
     * @param pressImg 水印图片  
     * @param targetImg 目标图片  
     * @param x 修正值 默认在中间  
     * @param y 修正值 默认在中间  
     * @param alpha 透明度  
     */  
    public final static void pressImage(String pressImg, String targetImg, int x, int y, float alpha) {   
        try {   
            File img = new File(targetImg);   
            Image src = ImageIO.read(img);   
            int wideth = src.getWidth(null);   
            int height = src.getHeight(null);   
            BufferedImage image = new BufferedImage(wideth, height, BufferedImage.TYPE_INT_RGB);   
            Graphics2D g = image.createGraphics();   
            g.drawImage(src, 0, 0, wideth, height, null);   
            //水印文件   
            Image src_biao = ImageIO.read(new File(pressImg));   
            int wideth_biao = src_biao.getWidth(null);   
            int height_biao = src_biao.getHeight(null);   
            g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, alpha));   
            g.drawImage(src_biao, (wideth - wideth_biao) / 2, (height - height_biao) / 2, wideth_biao, height_biao, null);   
            //水印文件结束   
            g.dispose();   
            ImageIO.write((BufferedImage) image, "jpg", img);   
        } catch (Exception e) {   
            e.printStackTrace();   
        }   
    }   
  
    /**  
     * 文字水印  
     * @param pressText 水印文字  
     * @param targetImg 目标图片  
     * @param fontName 字体名称  
     * @param fontStyle 字体样式  
     * @param color 字体颜色  
     * @param fontSize 字体大小  
     * @param x 修正值  
     * @param y 修正值  
     * @param alpha 透明度  
     */  
    public static void pressText(String pressText, String targetImg, String fontName, int fontStyle, Color color, int fontSize, int x, int y, float alpha) {   
        try {   
            File img = new File(targetImg);   
            Image src = ImageIO.read(img);   
            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);   
            g.setColor(color);   
            g.setFont(new Font(fontName, fontStyle, fontSize));   
            g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, alpha));   
            g.drawString(pressText, (width - (getLength(pressText) * fontSize)) / 2 + x, (height - fontSize) / 2 + y);   
            g.dispose();   
            ImageIO.write((BufferedImage) image, "jpg", img);   
        } catch (Exception e) {   
            e.printStackTrace();   
        }   
    }   
分享到:
评论

相关推荐

    C# 图片水印添加和去掉

    在C#编程中,添加和移除图片水印是一项常见的图像处理任务,主要涉及到图形绘制和位图操作。本文将详细讲解如何利用`System.Drawing.Graphics`类和`LockBits`方法来实现这一功能。 首先,`System.Drawing.Graphics`...

    采用java实现图片水印

    在IT行业中,图片水印是一种常见的技术,用于保护版权或者增加视觉标识。Java作为一种多用途且功能强大的编程语言,提供了丰富的库和API来处理图像,包括添加水印。本篇文章将详细探讨如何使用Java实现图片水印的...

    java中处理图片水印

    在Java编程语言中,处理图片水印涉及到图像处理和图形绘制技术。`Graphics2D`是Java 2D API的一部分,它提供了丰富的功能,可以用来在图像上添加文本、图像等元素,实现水印效果。下面我们将深入探讨如何使用`...

    java操作wordpdf图片生成图片水印

    总的来说,Java通过Apache POI和PDFBox等库,为开发者提供了强大的工具来操作Word和PDF文档,并生成图片水印。这不仅可以提高工作效率,也能有效地保护和标记文档内容。通过深入学习和实践,开发者可以掌握这些技能...

    C#添加文字水印,图片水印,程序实例源代码

    在本文中,我们将深入探讨如何在C#编程环境中创建文字水印和图片水印,并提供一个实际的程序实例源代码。C#是一种广泛使用的面向对象的编程语言,尤其在开发Windows应用程序和.NET框架中占据重要地位。对于图像处理...

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

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

    非常好用的图片去水印工具

    总的来说,"非常好用的图片去水印工具"是一款实用的图像处理软件,适用于那些需要清理图片水印以提升视觉效果的用户。通过理解并熟练运用这款工具,用户可以快速、高效地处理图片,为他们的电商活动增添专业性。

    LSB图片水印嵌入

    LSB图片水印嵌入是一种数字图像处理技术,主要用于在图像中秘密地嵌入信息,如文字、数据或其它图像,而不会明显改变原始图像的视觉效果。这种技术基于最低有效位(Least Significant Bit, LSB)的概念,是隐写术...

    图片水印,设置透明度,宽度。水印文字和图片

    在图像处理领域,图片水印是一项常见的技术,用于在图片上添加标识或版权信息,以保护图片不被未经授权的使用。水印可以是文字或图片形式,通过设置透明度和宽度来达到既不影响图片主体展示,又能有效显示水印信息的...

    图片水印处理程序,图片水印处理程序,图片水印处理程序

    我自己做的图片水印处理程序希望大家喜欢哦

    java 图片水印 改变图片大小

    首先,让我们了解"图片水印"。水印通常用于保护版权或者为图片增加一些标识信息。在Java中,我们可以使用诸如`Java AWT`或`JavaFX`库来创建和添加水印。例如,使用`BufferedImage`类创建一个新的图像层,然后在该层...

    C# 给图片加上文字或图片水印

    C# 给图片加上文字或图片水印,通过使用GDI+ 给图片上加水印。实现了透明文字与透明图片水印。可设置水印位置。

    水印 java Graphics2D实现文字图片水印

    在Java编程语言中,添加文字或图片水印是一项常见的任务,尤其在处理图像处理和多媒体应用时。Graphics2D是Java 2D API的一部分,它提供了丰富的绘图和图形操作功能,包括添加水印到图像。下面将详细介绍如何使用...

    快速去除图片水印工具

    快速去除图片水印是一款能快速去除图片水印软件,这款软件非常智能及傻瓜化,通过简单的操作即可轻松去除图片上的水印!去掉水印的图片不失真。同源图片一样,推荐新手使用. 快速去除图片水印 软件的使用方法: ...

    批量去除图片水印

    批量去除图片水印尤其对于处理大量含有水印的图片时,能够极大地提高效率。本篇文章将详细探讨批量去除图片水印这一主题,以及如何利用提供的工具“BatchInpaint Portable”来实现这一目标。 首先,我们要理解什么...

    Persits.Jpeg图片水印组件

    【Persits.Jpeg图片水印组件】是一款专用于ASP(Active Server Pages)环境下的图片处理组件,它提供了强大的功能,可以方便地为JPG、JPEG格式的图片添加水印效果。这款组件对于Web开发者来说非常实用,特别是在创建...

    C# 批量加水印(含文字水印以及图片水印).rar

    本项目以C#编程语言为基础,提供了批量添加水印的功能,无论是文字水印还是图片水印,都可以轻松实现。下面我们将详细探讨这个主题。 首先,让我们理解“水印”的概念。水印是图像处理中的一个术语,指的是在原始...

    react-React水印组件支持图片水印文字水印

    "react-watermark-module" 是一个专为此设计的React组件,它允许开发者轻松集成图片水印和文字水印功能。下面将详细阐述这个组件的核心特点、用法以及如何在实际项目中应用。 一、核心特点 1. **灵活性**:react-...

    超强去出图片水印软件

    《使用Teorex Inpaint高效去除图片水印的详尽指南》 在数字图像处理领域,去除图片水印是一项常见的需求。尤其是对于那些不熟悉专业图像编辑软件如Photoshop(简称PS)的用户来说,找到一款操作简便、效果显著的...

    Python编程-使用OpenCV和Numpy库实现图片去水印(附代码)

    Python编程-使用OpenCV和Numpy库实现图片去水印-代码 包含;...水印覆盖,图片修复效果优化 !!! 请注意,去水印可能涉及版权问题,确保你只在你有权处理的图像上尝试这些方法,并且不要用于非法目的

Global site tag (gtag.js) - Google Analytics