JSP 使用 图片加水印

这个是加图片水印的! 
package com.pic; 

import java.awt.*; 
import java.awt.event.*; 
import java.io.*; 
import java.awt.image.*; 
import org.w3c.dom.*; 
import com.sun.image.codec.jpeg.*; 
import javax.imageio.*; 

public class ImgBean_i{ 
public void ImgBean_i(){ 

public void ImgYin(String Imagename_biao,String ImgName){ 
try{ 
File _file = new File(ImgName); 
Image src = ImageIO.read(_file); 
int wideth=src.getWidth(null); 
int height=src.getHeight(null); 
BufferedImage image=new BufferedImage(wideth,height,BufferedImage.TYPE_INT_RGB); 
Graphics g=image.createGraphics(); 
g.drawImage(src,0,0,wideth,height,null); 

//水印文件 
File _filebiao = new File(Imagename_biao); 
Image src_biao = ImageIO.read(_filebiao); 
int wideth_biao=src_biao.getWidth(null); 
int height_biao=src_biao.getHeight(null); 
g.drawImage(src_biao,wideth-110,height-30,wideth_biao,height_biao,null); 
/// 
g.dispose(); 
FileOutputStream out=new FileOutputStream(ImgName); 
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); 
encoder.encode(image); 
out.close(); 

catch(Exception e){ 
System.out.println(e); 



/ 这个是加文字水印的 
package com.pic; 

import java.awt.*; 
import java.awt.event.*; 
import java.io.*; 
import java.awt.image.*; 
import org.w3c.dom.*; 
import com.sun.image.codec.jpeg.*; 
import javax.imageio.*; 

public class ImgBean{ 
public void ImgBean(){} 
public void ImgYin(String s,String ImgName){ 
try{ 
File _file = new File(ImgName); 
Image src = ImageIO.read(_file); 
int wideth=src.getWidth(null); 
int height=src.getHeight(null); 
BufferedImage image=new BufferedImage(wideth,height,BufferedImage.TYPE_INT_RGB); 
Graphics g=image.createGraphics(); 
g.drawImage(src,0,0,wideth,height,null); 
//String s="www.qhd.com.cn"; 
g.setColor(Color.RED); 
g.setFont(new Font("宋体",Font.PLAIN,20)); 
Font aa=new Font("宋体",Font.PLAIN,20); 

g.drawString(s,wideth-150,height-10); 
g.dispose(); 
FileOutputStream out=new FileOutputStream(ImgName); 
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out); 
encoder.encode(image); 
out.close(); 

catch(Exception e){ 
System.out.println(e); 



用jsp实现JPG图片水印 
<%@ 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.*,java.util.*"%> 
<% 
out.clear(); 
response.addHeader("pragma","NO-cache"); 
response.addHeader("Cache-Control","no-cache"); 
response.addDateHeader("Expries",0); 
String FileName = 源图片路径; 
String OutFileName = 生成的新图片路径; 
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); //向BufferedImage写入文本字符 
g.dispose(); //使更改生效 
FileOutputStream outi = new FileOutputStream(OutFileName); //创建输出文件流 
JPEGImageEncoder encodera = JPEGCodec.createJPEGEncoder(outi); //创建JPEG编码对象 
encodera.encode(image); //对这个BufferedImage (image)进行JPEG编码 
outi.close(); //关闭输出文件流 

%> 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值