java生成二维码(最初版)
研究了2个小时,发现自己竟然智障,用原先的图片覆盖另一个图片
package com.tz.util;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import javax.imageio.ImageIO;
import com.swetake.util.Qrcode;//引进的包,我自己
/**
* 生成二维码
* @author yanlong
* content 二维码的内容
* imgPath二维码的路径
* return void 返回的类型
*
*/
public class QrcodeImg {
//生成一个二维码的方法
public static void getQrcodeImg(String content,String imgPath){
//实例化Qrcode 对象
Qrcode qcQrcode=new Qrcode();
//编码
qcQrcode.setQrcodeEncodeMode('B');
//排错率15%的大小
qcQrcode.setQrcodeErrorCorrect('M');
//版本
qcQrcode.setQrcodeVersion(15);
int width=235;
int height=235;
//花板
BufferedImage image=new BufferedImage(width,height,BufferedImage.TYPE_INT_BGR);
//绘制工具
Graphics2D gs=image.createGraphics();
//开始绘制
//背景色
gs.setBackground(Color.white);
//绘制矩形
gs.clearRect(0, 0, width, height);
//设置内容的颜色
gs.setColor(Color.black);
//开始处理我们的信息
byte[] codeOut;
try {
codeOut =content.getBytes("utf-8");
//通过byte返回布尔类型的数组。
boolean[][] code=qcQrcode.calQrcode(codeOut);
for(int i=0;i<code.length;i++){
for(int j=0;j<code.length;j++){
if(code[j][i]){
//如果为真则涂成黑色
gs.fillRect(j*3+2, i*3+2, 3, 3);
}
}
}
/*
//加载图片
File file=new File("C:/Users/yanlong/Desktop/3.png");
Image srcImage=ImageIO.read(file);
int _width=srcImage.getWidth(null);
int _heigth=srcImage.getHeight(null);
gs.drawImage(srcImage,(width-_width)/2,(height-_heigth)/2,_width,_heigth,null);
*/
//释放资源
gs.dispose();
image.flush();
//保存------,写入指定路径
ImageIO.write(image, "png", new File(imgPath));
System.out.println("二维码生成成功");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//主方法
public static void main(String[] args){
getQrcodeImg(" ","C:/Users/yanlong/Desktop/3.png");
}
}
java生成二维码(最初版)的更多相关文章
- 利用JAVA生成二维码
本文章整理于慕课网的学习视频<JAVA生成二维码>,如果想看视频内容请移步慕课网. 维基百科上对于二维码的解释. 二维条码是指在一维条码的基础上扩展出另一维具有可读性的条码,使用黑白矩形图 ...
- java 生成二维码、可带LOGO、可去白边
1.准备工作 所需jar包: JDK 1.6: commons-codec-1.11.jar core-2.2.jar javase-2.2.jar JDK 1.7: commons-codec- ...
- java 生成二维码后叠加LOGO并转换成base64
1.代码 见文末推荐 2.测试 测试1:生成base64码 public static void main(String[] args) throws Exception { String dat ...
- java生成二维码打印到浏览器
java生成二维码打印到浏览器 解决方法: pom.xml的依赖两个jar包: <!-- https://mvnrepository.com/artifact/com.google.zxin ...
- 二维码相关---java生成二维码名片,而且自己主动保存到手机通讯录中...
版权声明:本文为博主原创文章,未经博主credreamer 同意不得转载 违者追究法律责任. https://blog.csdn.net/lidew521/article/details/244418 ...
- java生成二维码(需导入第三方ZXing.jar包)
//这个类是用来解析,通过图片解析该图片的网页链接是什么 package util; import java.awt.Graphics2D;import java.awt.geom.AffineTra ...
- JAVA生成二维码图片代码
首先需要导入 QRCode.jar 包 下载地址看这里 http://pan.baidu.com/s/1o6qRFqM import java.awt.Color;import java.awt. ...
- java生成二维码图片
1.POM文件引入 <dependency> <groupId>com.google.zxing</groupId> <artifactId>core& ...
- java生成二维码的三个工具
1. 使用SwetakeQRCode在Java项目中生成二维码 http://swetake.com/qr/ 下载地址 或着http://sourceforge.jp/projects/qrcode ...
随机推荐
- 5 questions
1.软件开发中有哪几种过程模型? 2.详细设计有哪几种描述方法? 3.什么是需求分析? 4.软件设计的基本原理包括哪些内容? 5.简述文档在软件工程中的作用? 逸翔.
- 牛客OI周赛7-提高组
https://ac.nowcoder.com/acm/contest/371#question A.小睿睿的等式 #include <bits/stdc++.h> using names ...
- Solution of wireless link "PCI unknown" on Centos 7.1
Pick From http://www.blogjava.net/miaoyachun/archive/2015/09/17/427366.html After Centos 7.1 tobe in ...
- [cnbeta]iPhone 2018年全球出货2.25亿部:中国区下滑两成
iPhone 2018年全球出货2.25亿部:中国区下滑两成 2019年01月22日 20:12 501 次阅读 稿源:快科技 0 条评论 https://www.cnbeta.com/artic ...
- Intel处理器缺货将会持续到2019年第二季度!
虽然Intel一再承诺加大投资.扩充产能,但一个不争的事实是,Intel处理器仍然都处于大面积紧张的缺货状态中,毕竟10nm迟迟无法规模量产,14nm上拥挤了太多产品线. 按照华硕CEO沈振来的最新说 ...
- hadoop MapReduce 入门
原创播客,如需转载请注明出处.原文地址:http://www.cnblogs.com/crawl/p/7687120.html ------------------------------------ ...
- Code First 重复外键
原因:在一个表中,我有如下字段 表名:orderInfo 列名:companySend,companyReceiver 先展示表结构,(手打了,见谅) public class OrderInfo { ...
- BZOJ5300 [Cqoi2018]九连环 【数学】【FFT】
题目分析: 这道题是数学必修五的原题,做法如下图,书上讲得很详细了. 那么这道题目用快速幂就可以解决了,值得注意的是,分析时间复杂度会发现直接做乘法其实是O(n^2)的,但是有一个1/20左右的常数, ...
- MT【26】ln(1+x)的对数平均放缩
评:1.某种程度上$ln(1+x)\ge \frac{2x}{2+x}$是最佳放缩. 2.这里涉及到分母为幂函数型的放缩技巧,但是不够强,做不了这题.
- 【 Gym 101116K 】Mixing Bowls(dfs)
BUPT2017 wintertraining(15) #4H Gym - 101116K 题意 给定一个菜谱,大写的单词代表混合物,小写的代表基础原料.每个混合物由其它混合物或基础原料组成,不会间接 ...