自由自在的给上传图片打水印

转载 2007年09月26日 08:48:00
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-110,wideth_biao,height_biao,null);
//水印文件在原图片文件的位置,原图片文件的右下角为wideth-0,height-0
 g.dispose();
FileOutputStream out=new FileOutputStream(ImgName);
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
encoder.encode(image);
out.close();
}
catch(Exception e){
System.out.println(e);
}
}
}
以下是修改过的smartupload代码
<%@ page language="java" import="com.jspsmart.upload.*" import="java.util.*,java.text.*"%>
<%@ page contentType="text/html;charset=GBK" %>

<jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload"/>

<HTML><META http-equiv=Content-Type content="text/html; charset=gb2312">
<LINK href="images/css.css" rel=stylesheet>
<BODY BGCOLOR="white" leftmargin="0" topmargin="0">
<%
 
 int count=0;      
 String path=request.getRealPath("");
 mySmartUpload.initialize(pageContext);

 mySmartUpload.upload();

 connectToDatabase();
 for (int i=0;i<mySmartUpload.getFiles().getCount();i++){

  com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(i);

  if (!myFile.isMissing()) {
   int Size=myFile.getSize() ;
   String FileName=myFile.getFileName();
   String FileExt=myFile.getFileExt();
   String uploadtime=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format( java.util.Calendar.getInstance().getTime() );
   if(Size>=1000000) {
    out.println("文件超过1000K!"); //限制大小
   }else{
    if((FileExt.equals("jpg")) || (FileExt.equals("JPG")) || (FileExt.equals("gif")) || (FileExt.equals("GIF"))) {
     java.util.Date date = new java.util.Date();
     SimpleDateFormat formatter1 = new SimpleDateFormat("yyyyMMddHHmmss");
                String name1=FileName.substring(0,FileName.indexOf("."));
                String name2=FileName.substring(FileName.indexOf("."),FileName.length());
                String newname=name1+formatter1.format(date)+name2;
     //session.putValue("path1",newname);
     myFile.saveAs("/photo/upfile/" + newname);
     if(Integer.parseInt(sy)==1) {
      com.pic.ImgBean_i bbb= new com.pic.ImgBean_i();
      bbb.ImgYin(path+"/photo/images/shuiyin.gif",path+"/photo/upfile/" + newname);//这里是水印文件的来源地址,可修改成取得下拉菜单值的形式,这样就可以实现打文字水印或者图片水印了
     }
     stmt.executeUpdate("insert into img_photo (name,http,userid,classid,title,content,imgsize,format,num,primflag,posttime) values ()");
     out.println(("<br><br><center>图片上传成功!<br>").toString());
    }else{
     out.println("文件格式不对!");
    }
   }
   count ++;
  }
   else
  {
   out.println("未找到上传文件!/n");
  }
 }
 disConnectToDatabase();
%>
</BODY>
</HTML> 

相关文章推荐

上传图片添加水印

把上传功能做到一个页面里,在需要上传的页面直接通过iframe调用即可: 调用页面代码: 图片:   上传页面代...

FCK在线编辑器上传图片加入水印功能

在线编辑器Fckeditor,适应多种开发语言环境,功能强大免费开源,能根据自己要求扩展功能。大家可以到官方网站下载最新源代码。利用编辑器在图片上传时,加入水印功能。 如何在自己的网站中架设FCKed...

WebApp上传图片并加水印

一、FileUp.html代码 <!--enctype="multipart/form-data":如果要上传文件必须加上该属性,指定相应的编码。 只有这...

百度编辑器上传图片添加水印方法

最近做项目,用的是百度编辑器,客户有个要求,上传图片的时候批量添加水印,基本上说我是菜鸟型的,百度半天找了好些方法,都不对,最后找到一个方法,测试了下,暂时没问题,把它记录下来,供大家参考。 1、打...

FCKEditor 2.63 上传图片时,可按日期生成文件名、生成缩略图、添加水印

FCKEditor 是一款非常优秀的 HTML 在线文本编辑器,功能完善,支持多种浏览器,支持多种开发语言,开放的功能接口,是目前网络上最流行的编辑器之一,被很多网站采用。下面是我 FCKEditor...

ecshop编辑器kindeditor上传图片添加水印插件

很多人都觉得ecshop自带的编辑器不好用,wan

.net上传图片的处理类库(缩略图、水印)

public static class ImageHelp { #region 生成缩略图 /// /// 生成缩略图 ///...

PHP 上传图片添加水印

<?php //为上传的图片加上水印 /* *自定义添加水印处理函数makeImageWaterMark *$image 上传的图片(要添加水印效果的图片资源标识) *$pos 水印位置...

asp.net 上传图片处理 水印 缩略图

asp.net 上传图片并作处理(生成缩略图 、在图片上增加文字水印、在图片上生成图片水印),经过测试! 方法类: upFileClass.cs using System; using Syst...

ASP.NET Ueditor上传图片添加水印

为Ueditor的本地上传图片添加水印的功能
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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