⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 watermarkfilter.java

📁 JSP通过过滤器方式无损给图片加水印,通过文件流方式加载水印
💻 JAVA
字号:
package net.javaok.framework.filter;

import java.awt.Color;
import java.awt.Font;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;

import net.javaok.framework.util.WaterMark;

public class WaterMarkFilter implements Filter {

	FilterConfig config = null;
	
	@Override
	public void destroy() {

	}

	@Override
	public void doFilter(ServletRequest request, ServletResponse response,
			FilterChain filterChain) throws IOException, ServletException {
		config.getServletContext().log("水印过滤器");
		HttpServletRequest req = (HttpServletRequest)request;
		//获取请求中的图片路径
		String filePath = req.getServletPath();//这是相对路径(并且包括了上下文路径)
		String fileRealPath = config.getServletContext().getRealPath(filePath);//得到绝对路径
		
		//调用工具类加水印(由于是动态从流中加水印,因此不会修改服务器上原图片)
		WaterMark.pressText("北大青鸟-侯明强",fileRealPath,"黑体",Font.BOLD,Color.red.getRed(),40, 350, 10, response.getOutputStream());
		
		filterChain.doFilter(request, response);
	}

	@Override
	public void init(FilterConfig config) throws ServletException {
		this.config = config;
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -