默认
发表评论 1
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
网站验证码破解实战研究(二)
阅读(20171) | 评论(1 收藏1 淘帖 1

原图:

网站验证码破解实战研究(二)_2.png

解析后:

网站验证码破解实战研究(二)_1.png

处理方式



package com.xuanyao.server.imgcode;

import java.awt.Color;
import java.awt.HeadlessException;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JOptionPane;

public class N8ImageCodeIdentify {

	public int isWhite(int colorInt){
		Color color = new Color(colorInt);
		if(color.getRed()+color.getGreen()+color.getBlue()>255){
			return 1;
		}
		return 0;
	}
	
	public BufferedImage removeBackGround(String picFile) throws IOException{
		 BufferedImage img = ImageIO.read(new File(picFile));  
	        int width = img.getWidth();  
	        int height = img.getHeight();  
	        for (int x = 0; x < width; ++x) {  
	            for (int y = 0; y < height; ++y) {  
	                if (isWhite(img.getRGB(x, y)) == 1) {  
	                    img.setRGB(x, y, Color.WHITE.getRGB());  
	                } else {  
	                    img.setRGB(x, y, Color.BLACK.getRGB());  
	                }  
	            }  
	        }  
	        return img;  
	}
	
	public void PaseByte(BufferedImage img){
		
	}
	
	public static void main(String[] args) {
		N8ImageCodeIdentify n = new N8ImageCodeIdentify();
		try {
			JOptionPane.showInputDialog(new ImageIcon(n.removeBackGround("CodeTest/securitycode.jpg")));
		} catch (HeadlessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	
}



剩下的就跟上一个帖子的方式一样

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:java swing
上一篇:JTextField可以设置输入位置吗下一篇:java怎么将一个图像画到一个指定的圆形区域呢
推荐方案
评论 1
顶!要是代码能注释说明一下就更棒了。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部