JAVA技术实现上传图片水印效果

原创 2006年06月02日 09:44:00

//以下为jsp代码,注释比较齐全

<%@ page autoFlush="false" contentType="text/html;charset=gb2312" import="java.io.FileInputStream,java.io.FileOutputStream,java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*"%>
<%
  out.clear();

  response.addHeader("pragma","NO-cache");
  response.addHeader("Cache-Control","no-cache");
  response.addDateHeader("Expries",0);
 
  String FileName = "C://money.jpg";  //in
  String OutFileName = "D://money.jpg";  //out
 
  FileInputStream sFile = new FileInputStream(FileName); //创建一个FileInputStream对象从源图片获取数据流
  Image src = javax.imageio.ImageIO.read(sFile); //创建一个Image对象并以源图片数据流填充
 
  int width = src.getWidth(null); //得到源图宽
  int height = src.getHeight(null); //得到源图长
 
  if (width>70&&height>30){
  
   BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); //创建一个BufferedImage来作为图像操作容器   

   Graphics g = image.getGraphics(); //创建一个绘图环境来进行绘制图象   
   g.drawImage(src,0,0,width,height,null); //将原图像数据流载入这个BufferedImage
   g.setFont(new Font("Times New Roman",Font.PLAIN,12)); //设定文本字体
   String rand = "NetBuilder";
   g.setColor(Color.black); //设定文本颜色
   g.drawString(rand,width-55,height-5); //向BufferedImage写入文本字符
   g.dispose(); //使更改生效
  
   FileOutputStream outi = new FileOutputStream(OutFileName); //创建输出文件流
   JPEGImageEncoder encodera = JPEGCodec.createJPEGEncoder(outi); //创建JPEG编码对象
   encodera.encode(image); //对这个BufferedImage (image)进行JPEG编码
  
   outi.close(); //关闭输出文件流
  }
%>

//以上代码于2006.6.2 在eclipse与tomcat5.0 & jdk1.5.0下调试通过

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java技术实现过程

上传图片java中用到的图片(等比缩放、切割、彩色转黑白、添加水印)等操作

import java.awt.AlphaComposite; import java.awt.Color; import java.awt.Font; import java.awt.Graphic...

使用SmartUplaod实现图片上传,并给上传图片添加水印后将请求参数以对象的方式返回

使用SmartUplaod实现图片上传,并给上传图片添加水印后将请求参数以对象的方式返回

Servlet技术实现动态图片验证码(Java)

Servlet实现绘制图片验证码 (使用Servlet实现:因为浏览器端请求Servlet资源;Servlet返回的是动态的响应。恰好满足了验证码的动态可变特征。) 图片验证码绘制过程:
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)