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

java动态生成图片 并把当前时间写在图片上

 
阅读更多

 

servlet:

 

package timeImage;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.font.FontRenderContext;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.IOException;
import java.io.OutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.sun.image.codec.jpeg.ImageFormatException;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;

@SuppressWarnings("serial")
public class CreateImageServlet extends HttpServlet {

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {

  response.setContentType("image/jpeg");
  createImage(response.getOutputStream());
 }
 @SuppressWarnings("unused")
 private void createImage(OutputStream out){
  SimpleDateFormat   formatter   =   new   SimpleDateFormat   ("yyyy年MM月dd日   HH:mm:ss     ");     
     Date   curDate   =   new   Date(System.currentTimeMillis());//获取当前时间  
     String s = "岱嘉:"+formatter.format(curDate); //转化为字符串
     Font font = new Font("Serif", Font.BOLD, 10); //设置字体 及大小
  int width = 250;  //图片的大小
  int height = 200;
  BufferedImage bi=new BufferedImage(width,height,BufferedImage.TYPE_INT_RGB);
  Graphics2D g=bi.createGraphics();
  g.setBackground(Color.green);
  g.clearRect(0, 0, width, height);
  g.setColor(Color.red);
  FontRenderContext context = g.getFontRenderContext(); 
//  g.drawLine(0, 0, 99, 199);
  Rectangle2D bounds = font.getStringBounds(s, context);   
        double x = (width - bounds.getWidth()) / 2;   
        double y = (height - bounds.getHeight()) / 2;
        double ascent = -bounds.getY();   
        double baseY = y + ascent;   
  g.drawString(s, (int)x, (int)y);
  g.dispose();
  bi.flush();
  JPEGImageEncoder encoder=JPEGCodec.createJPEGEncoder(out);
  JPEGEncodeParam param=encoder.getDefaultJPEGEncodeParam(bi);
  param.setQuality(1, false);
  encoder.setJPEGEncodeParam(param);
  
  try {
   encoder.encode(bi);
  } catch (ImageFormatException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }

}

 

jsp:

<img alt="hello" src="CreateImage" align="middle">

分享到:
评论

相关推荐

    java生成1000张图片,分别在每张图片上写阿拉伯数字1~1000

    在Java编程环境中,生成带有阿拉伯数字的图片是一项实用的任务,特别是在网页开发或者自动化测试中,可能需要这样的图像作为标识或顺序指示。以下是如何使用Java来实现这个功能的详细步骤和相关知识点。 首先,我们...

    Java生成Echars图片方法

    本文将深入探讨如何在Java环境中利用ECharts生成图片的方法。 首先,我们需要理解ECharts的本质是JavaScript代码,它在浏览器环境中运行,生成HTML页面中的图表。因此,要在Java中生成ECharts图片,我们通常需要...

    Java爬虫Jsoup+httpclient获取动态生成的数据

    本文主要讲述如何利用Java编程语言中的Jsoup库和HttpClient工具包来获取和解析动态生成的数据,特别是那些通过JavaScript动态加载的数据。 ### Java爬虫基础 Java爬虫是指使用Java语言编写的一类程序,这些程序...

    java 上传图片生成缩略图

    本篇文章将基于提供的代码片段详细讲解如何使用Java来实现上传图片并自动生成缩略图的功能。 #### 核心知识点概述 1. **读取与获取文件路径**:利用`HttpServletRequest`对象获取服务器上的文件存储路径。 2. **...

    电子合同-Java生成电子签章

    在"电子合同-Java生成电子签章"项目中,Spring Boot被用作核心框架,负责整个系统的运行环境和依赖管理。开发者可以通过编写微服务的方式来实现电子签章的功能模块。 接着,我们来看看Java电子签章的实现。电子签章...

    java 生成gif 图片验证码

    通过这种方式,我们可以在Java环境中生成具有动态效果的GIF图片验证码,提高系统的安全性。在实际应用中,还需要考虑验证码的过期时间、刷新机制以及与服务器端验证逻辑的配合,以确保服务的稳定性和用户友好性。

    Java后端生成图片验证码

    当前端发送请求时,这个Controller生成新的验证码,将其保存到Session,并返回对应的图像数据,前端再将此数据显示在页面上。 6. **验证码的更新**: 用户点击更换验证码时,前端会向后端发送一个新的请求,...

    java验证码生成类

    首先,验证码的基本原理是生成一段随机的、难以由机器识别的文字或数字序列,然后要求用户在限定时间内输入这个序列以证明他们不是机器人。验证码的复杂度可以根据安全需求进行调整,例如,可以设置为纯数字、字母...

    java实现多张jgp图片转动画gif格式

    在Java编程环境中,将多张JPEG格式的图片转换为动态GIF格式是一项常见的图像处理任务。这个Demo展示了如何使用Java的图像处理库来完成这一过程。以下是对这个过程的详细解释: 首先,我们需要一个能够处理GIF格式的...

    Java生成HTML网页代码,希望对大家有帮助

    使用`Calendar.getInstance()`获取当前时间,并将其转换为文件名的一部分,确保每次生成的文件名都是唯一的。然后使用`FileOutputStream`将修改后的HTML内容写入新文件。 #### 关键技术点 - **资源定位**:Java...

    java生成图片进行套打功能

    "java生成图片进行套打功能" Java 生成图片进行套打功能是指使用 Java 语言生成图片,并在图片中添加文字、图片等元素,以达到套打的目的。下面是 Java 生成图片进行套打功能的知识点: 1. BufferedImage 类:...

    基于海康sdk的java程序摄像头实时抓拍图片保存到本地.zip

    使用Java可以实现跨平台的兼容性,使得在不同操作系统上运行代码成为可能。 3. **Maven**:Maven是一个项目管理和综合工具,用于构建、依赖管理和文档生成。在这个项目中,Maven负责管理项目的依赖关系,如JDBC驱动...

    java将视频定时截取图片并保存

    在Java编程环境中,将视频定时截取图片并保存是一项常见的任务,这通常涉及到多媒体处理和图像操作。在本文中,我们将深入探讨如何实现这个功能,包括必要的库、关键步骤以及可能遇到的问题。 首先,我们需要一个...

    java生成二维码.zip

    本压缩包"java生成二维码.zip"包含了利用ZXing(Zebra Crossing)库在Java中生成二维码的相关资源,特别地,它已经进行了封装,使得开发者能够更方便地调用,无需深入了解底层实现细节。 ZXing,又称“条形码扫描器...

    java源码包---java 源码 大量 实例

    6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...

    Java利用Phantomjs实现生成图片的功能

    在Java中使用PhantomJS生成图片,主要是借助PhantomJS提供的API来实现网页的渲染和截图。这个过程通常包括以下步骤: 1. **安装PhantomJS**:首先需要从官方网站下载对应操作系统的PhantomJS版本,并将其添加到系统...

    图片库项目(Java实现).zip

    1. **Java**: 作为后端的主要编程语言,Java在这里起到了处理业务逻辑、与数据库交互和生成动态响应的作用。使用Java的Servlet和JSP技术,开发者可以创建动态网页并处理HTTP请求。项目中可能还使用了Java的IO流进行...

    Java实现的图片验证码

    在本文中,我们将深入探讨如何使用Java语言来实现一个图片验证码的系统。Java因其丰富的库和强大的面向对象特性,成为开发验证码的理想选择。 验证码的核心功能包括生成随机字符串、将字符串转化为图像以及提供用户...

    安卓 图片合成视频(利用javacv)

    在Android平台上,将图片合成为视频是一个常见的需求,特别是在多媒体应用或者动态相册制作中。这里我们使用的是JavaCV库,这是一个强大的Java接口,提供了OpenCV、FFmpeg等开源库的功能,使得在Java或者Android中...

Global site tag (gtag.js) - Google Analytics