`

java 给图片添加文字或浮水印

    博客分类:
  • JAVA
阅读更多

java 操作图片的步骤如下

 

javax.imageio.ImageIO 使用此类把图片加载到内存中,

用法如下

 读取图片的函数原型,我们可以看出 BufferdImage 需要File来构造

 

 

static BufferedImage  read(File input)

返回一个 BufferedImage,作为使用 ImageReader(它是从当前已注册 ImageReader 中自动选择的)解码所提供 File 的结果。

static BufferedImage read(URL input)

返回一个 BufferedImage,作为使用 ImageReader(它是从当前已注册 ImageReader 中自动选择的)解码所提供 URL 的结果。

 

BufferedImage 子类描述具有可访问图像数据缓冲区的 Image

BufferedImage的函数

 Graphics2D createGraphics()
          创建一个 Graphics2D,可以将它绘制到此 BufferedImage 中。

 Graphics getGraphics()
          此方法返回 Graphics2D,但此处是出于向后兼容性的考虑。

 

首先要知道Graphics  是用来绘制2D对象的, 这样我们就可以操作内存中的图片缓冲区啦,

Graphics2D 类扩展 Graphics 类,以提供对几何形状、坐标转换、颜色管理和文本布局更为复杂的控制。它是用于在 Java(tm) 平台上呈现二维形状、文本和图像的基础类。

 

Shape 操作

文本操作

Image 操作

 

下面简单实例 是使用文本操作 :

 

 

 

static BufferedImage read(URL input)
          返回一个 BufferedImage,作为使用 ImageReader(它是从当前已注册 ImageReader 中自动选择的)解码所提供 URL 的结果。
try {
			BufferedImage buffImage =  ImageIO.read(new File("src/Wind.jpg"));
			Graphics g = buffImage.getGraphics();
			Font font = new Font("黑体",Font.BOLD,30);
			g.setFont(font);
			g.drawString("测试文字", 100, 100);
		
			FileOutputStream outImg = new FileOutputStream(new File("test.jpg"));
			ImageIO.write(buffImage,"jpg", outImg);
			outImg.flush();
			outImg.close();
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

 

 

绘制图片其实很简单

 

 

drawImage(BufferedImage img, BufferedImageOp op, int x, int y)
          呈现使用 BufferedImageOp 过滤的 BufferedImage
abstract  boolean drawImage(Image img, AffineTransform xform, ImageObserver obs)
          呈现一个图像,在绘制前进行从图像空间到用户空间的转换。

drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)
          绘制指定图像中当前可用的图像。

drawImage(Image img, int x, int y, ImageObserver observer)
          绘制指定图像中当前可用的图像。

drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
          绘制指定图像中已缩放到适合指定矩形内部的图像。

还有几个重载函数

 

简单的使用方法是

 

//如何得到Image img
//如果你有丰富的编程经验,那么你应该很熟悉 继承多态
/* 
Image的
直接已知子类: 
BufferedImage, VolatileImage 
*/
//那么我们第一个参数可以传 BufferedImage 对象

BufferedImage 可以使用
BufferedImage buffImage =  ImageIO.read(new File("src/Wind.jpg"));

g.drawImage(buffImage,20,20,null);

 

1
0
分享到:
评论

相关推荐

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

    在Java编程环境中,给图片添加文字或图片水印是一项常见的图像处理任务,广泛应用于版权保护、品牌宣传等领域。本项目“基于Java给图片添加文字或图片水印”旨在教授如何利用Java实现这一功能,适用于大学生的课程...

    用Java给图片添加文字或图像水印

    在这个Java项目中,我们关注的是如何将这两种类型的水印添加到图片中。 在Java中实现这个功能,我们可以利用Java的丰富的图形处理库,如`java.awt`和`javax.imageio`包。`java.awt`提供了绘图和图形对象的基本操作...

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

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

    JAVA实现给图片增加图片水印或者文字水印-依赖包

    System.out.println("水印添加成功,新图片已保存至:" + targetImagePath); } catch (ImageReadException | IOException | ImageWriteException e) { e.printStackTrace(); } } private static ...

    java给图片添加水印

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

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

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

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

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

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

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

    给图片添加文字或图片水印C#代码

    C#代码给图片添加文字或图片水印

    java 图片添加水印

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

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

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

    Java实现在图片上添加水印图片和水印文字.doc

    Java 实现图片添加水印图片和水印文字 Java 是一种广泛应用于企业级开发的编程语言,拥有强大灵活的图形处理能力。本文将详细介绍如何使用 Java 实现图片添加水印图片和水印文字,并对代码进行解释。 图片添加水印...

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

    水印是在图像或文档上添加的一种视觉标记,它可以是文字、图像或者图形,用于表明所有权、版权信息或增加视觉效果。在数字图像处理中,水印通常被嵌入到图像的数据层中,不影响原始图像的观看,但在一定程度上可以...

    采用java实现图片水印

    在Java中,一个简单的水印添加示例代码可能如下: ```java import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; public class WaterMarkExample { ...

    java 图片水印 改变图片大小

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

    java 图片缩放、加水印

    图片操作类源代码,该类主要用于给图片进行缩放、加水印和得到图片的高、宽及类型。 具体操作请自己参照方法说明自己测试改写。

    Java给图片加水印

    "Java给图片加水印"这个主题,就是关于如何利用Java技术在图片上添加标识或文字,以保护版权或者增强视觉效果。下面我们将深入探讨这个话题。 首先,我们需要了解Java中的图像处理库,如Java Advanced Imaging (JAI...

    JAVA图片或文字水印以及图片缩放

    包含了一些java对图片操作处理的方法: 1.给图片添加图片水印 2.给图片添加文字水印 3.图片缩放 *主方法测试代码简单易懂

    java中处理图片水印

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

Global site tag (gtag.js) - Google Analytics