Java随机生成中文汉字
/**
* 原理是从汉字区位码找到汉字。在汉字区位码中分高位与底位, 且其中简体又有繁体。位数越前生成的汉字繁体的机率越大。
* 所以在本例中高位从171取,底位从161取, 去掉大部分的繁体和生僻字。但仍然会有!!
*
*/
@Test
public void create() throws Exception {
String str = null;
int hightPos, lowPos; // 定义高低位
Random random = new Random();
hightPos = (176 + Math.abs(random.nextInt(39)));//获取高位值
lowPos = (161 + Math.abs(random.nextInt(93)));//获取低位值
byte[] b = new byte[2];
b[0] = (new Integer(hightPos).byteValue());
b[1] = (new Integer(lowPos).byteValue());
str = new String(b, "GBk");//转成中文
System.err.println(str);
}
/**
* 旋转和缩放文字
* 必须要使用Graphics2d类
*/
public void trans(HttpServletRequest req, HttpServletResponse resp) throws Exception{
int width=88;
int height=22;
BufferedImage img = new BufferedImage(width, height,BufferedImage.TYPE_INT_RGB);
Graphics g = img.getGraphics();
Graphics2D g2d = (Graphics2D) g;
g2d.setFont(new Font("黑体",Font.BOLD,17));
Random r = new Random();
for(int i=0;i<4;i++){
String str = ""+r.nextInt(10);
AffineTransform aff = new AffineTransform();
aff.rotate(Math.random(),i*18,height-5);
aff.scale(0.6+Math.random(), 0.6+Math.random());
g2d.setTransform(aff);
g2d.drawString(str,i*18,height-5);
System.err.println(">:"+str);
}
g2d.dispose();
ImageIO.write(img, "JPEG",resp.getOutputStream());
}
分享到:
相关推荐
今天小编就为大家分享一篇关于Java代码实现随机生成汉字的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
随机生成简体中文,根据随机码生成随机的简体中文汉字,非常实用
java随机动态生成汉字验证码图片的实例代码
共2万个随机昵称,其中1万个中文昵称,1万个英文昵称,方便中英文游戏开发使用。 中文昵称包括大量的网络昵称以及传统中文姓名名称。
此文件可随机生成中国的汉字姓名。 姓包括百家姓,嘿嘿,为了使生成的名字更普遍一些,选择了提高前十姓的机率。 男性名和女性名,各取了1300个做字典,随机生成。 如果您给孩子起名,可以参考一下。 ^_^ 定义一个...
java随机动态生成汉字验证码图片的实例代码分享,只能用炫酷来形容,感兴趣就下载看看吧
【Java版本】随机生成中文姓名(精简版);包括生僻字
个人学习一点心得,随机生成汉字的方法,配合java的Grahpics等和Grahpics2D类等能开发图片验证码,验证信息存放在Session中。少分啊,打发点吧!
使用SpringBoot搭建,jdk1.8,layui前端框架。验证码图片文字随机生成,可以选择中文、字母、数字、字母数字的组合。可以根据自己的需要进行修改。
java随机生成字符串,字符组合多样,可以大小字组合、大+小字符+数字等方式,大家参考使用吧
5w个国内公司名称,供后台模拟批量生成公司名称使用,
java代码实现汉字库,编码方式有GB2312,GBK,Unicode,UTF-8,利用以上编码规则产生汉字库,目前是第一版本,只产生汉字库,第二版本实现随机汉字验证码,根据拼音检索匹配的汉字.
csdn上三种java验证码生成方法,以及谷歌开源验证码,总共四...3. 汉字验证码,噪点,未加扭曲(未使用字符集,随机生成汉字) 4. 谷歌开源验证码 只对第一种方法写了验证,后三种方法只有验证图片生成,验证方法同一。
主要包含两个类,一个是...实现原理比较简单,将汉字和干扰线生成图片并将汉字保存到session,前台获取每次生成的验证码图片进行展示,验证的时候就获取文本框输入的值传到后台与session值进行比较,功能就怎么简单。
介绍验证码的工作原理,讨论了目前验证码存在的问题,提出了在java Web中实现随机生成扭曲中文验证码的方法和具体的实验过程。
有没有发现最后生成了一串长的base64编码 把这一串编码放到img标签在前面加上"data:image/gif;base64,"是能直接使用的 ;base64,(你的base64编码)"/> 验证码最佳宽高计算公式:字体大小和图片高度相等,图片宽度=...
java类创建一个马尔可夫链频率表,然后用它来生成句子。 句子的质量将完全取决于输入的文本。 文本越大,语法越正确,生成的句子就越好。 您可以使用 ngram 参数来确定单词链的长度。 默认值为 2。 用法: 马尔可夫 ...
随机汉字,汉字验证码,汉字验证码源码,Java源码下载,java源码。Java文字字符频道免费提供最新Java文字字符源码下载,文字字符源码Java,Java文字字符源码,文字字符Java源码下载等。
运用Jsp技术生成彩色汉字验证码,生成随机颜色
随机中文文字、随机抠图、拼图都只需要用到BufferedImage和Graphics2D。 3.2.前端熟悉点击事件,根据点击事件的坐标位置、图片的位置、浏览器的滚动位置算 出点击图片的相对位置;熟悉拖动原理。 3.3.坐标信息...