资源简介
该资源为java生成二维码,可调整二维码大小,排版,密度,设置图片头像
代码片段和文件信息
package qrcode;
import java.awt.Graphics2D;
import java.awt.geom.AffineTransform;
import java.awt.image.BufferedImage;
import com.google.zxing.LuminanceSource;
public class BufferedImageLuminanceSource extends LuminanceSource {
private final BufferedImage image;
private final int left;
private final int top;
public BufferedImageLuminanceSource(BufferedImage image) {
this(image 0 0 image.getWidth() image.getHeight());
}
public BufferedImageLuminanceSource(BufferedImage image int left
int top int width int height) {
super(width height);
int sourceWidth = image.getWidth();
int sourceHeight = image.getHeight();
if (left + width > sourceWidth || top + height > sourceHeight) {
throw new IllegalArgumentException(
“Crop rectangle does not fit within image data.“);
}
for (int y = top; y < top + height; y++) {
for (int x = left; x < left + width; x++) {
if ((image.getRGB(x y) & 0xFF000000) == 0) {
image.setRGB(x y 0xFFFFFFFF); // = white
}
}
}
this.image = new BufferedImage(sourceWidth sourceHeight
BufferedImage.TYPE_BYTE_GRAY);
this.image.getGraphics().drawImage(image 0 0 null);
this.left = left;
this.top = top;
}
public byte[] getRow(int y byte[] row) {
if (y < 0 || y >= getHeight()) {
throw new IllegalArgumentException(
“Requested row is outside the image: “ + y);
}
int width = getWidth();
if (row == null || row.length < width) {
row = new byte[width];
}
image.getRaster().getDataElements(left top + y width 1 row);
return row;
}
public byte[] getMatrix() {
int width = getWidth();
int height = getHeight();
int area = width * height;
byte[] matrix = new byte[area];
image.getRaster().getDataElements(left top width height matrix);
return matrix;
}
public boolean isCropSupported() {
return true;
}
public LuminanceSource crop(int left int top int width int height) {
return new BufferedImageLuminanceSource(image this.left + left
this.top + top width height);
}
public boolean isRotateSupported() {
return true;
}
public LuminanceSource rotateCounterClockwise() {
int sourceWidth = image.getWidth();
int sourceHeight = image.getHeight();
AffineTransform transform = new AffineTransform(0.0 -1.0 1.0
0.0 0.0 sourceWidth);
BufferedImage rotatedImage = new BufferedImage(sourceHeight
sourceWidth BufferedImage.TYPE_BYTE_GRAY);
Graphics2D g = rotatedImage.createGraphics();
g.drawImage(image transform null);
g.dispose();
int width = getWidth();
return new BufferedImageLuminanceSource(rotatedImage top
sourceWidth - (left + width) getHeight() width);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-09-29 16:57 QrCode\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\
文件 982 2018-09-29 16:57 QrCode\Qrcode-2D\.classpath
文件 1042 2018-09-29 16:57 QrCode\Qrcode-2D\.project
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\
文件 503 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\.jsdtscope
文件 364 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\org.eclipse.jdt.core.prefs
文件 479 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\org.eclipse.wst.common.component
文件 345 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2018-09-29 16:58 QrCode\Qrcode-2D\.settings\org.eclipse.wst.jsdt.ui.superType.name
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\build\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode\
文件 3293 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode\BufferedImageLuminanceSource.class
文件 7479 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode\QRCodeUtil.class
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode2way\
文件 3321 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode2way\QrCodeLogoUtilAnLog(1).class
文件 2657 2018-09-29 16:58 QrCode\Qrcode-2D\build\classes\qrcode2way\QrCodeUtils.class
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\src\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode\
文件 2795 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode\BufferedImageLuminanceSource.java
文件 7791 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode\QRCodeUtil.java
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode2way\
文件 2980 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode2way\QrCodeLogoUtilAnLog.java
文件 2815 2018-09-29 16:58 QrCode\Qrcode-2D\src\qrcode2way\QrCodeUtils.java
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\WebContent\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\WebContent\me
文件 39 2018-09-29 16:58 QrCode\Qrcode-2D\WebContent\me
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\WebContent\WEB-INF\
目录 0 2018-09-29 16:58 QrCode\Qrcode-2D\WebContent\WEB-INF\lib\
............此处省略33个文件信息
相关资源
- core-2.3.0 + QRCode + zxing-1.6-core + zxing-j
- java二维码生成与解析代码实现
- QRCode需要用的jar包
- android二维码扫描、读取、识别、生成
- 开源FireMonkey精品控件集-ZXing.Delphi f
- 用Servlet实现的二维码图片生成
- Qrcode_swetake
- java-根据网站链接url生成二维码qrcod
- Qrcode生成二维码Java web项目方法
- Qrcode.jar
- qrcode核心jar包
- QRcodejar包
- jp.sourceforge.qrcode_QRCode.jar二维码编码解
- qrcode生成二维码和解析二维码jar包,
- Android快速实现二维码扫描功能
- 二维码工具
- java二维码生成及解析内含QRCode所需
评论
共有 条评论