
package org.tio.sitexxx.server.controller.base;

import cn.hutool.extra.qrcode.QrCodeUtil;
import cn.hutool.extra.qrcode.QrConfig;
import org.tio.http.common.HttpRequest;
import org.tio.http.common.HttpResponse;
import org.tio.http.server.annotation.RequestPath;
import org.tio.http.server.util.Resps;

/**
 * 生成二维码
 * @author 
 * 2016年6月29日 下午7:53:59
 */
@RequestPath(value = "/qrcode")
public class QrCodeController {
	/**
	 * @param width
	 * @param height
	 * @param color 0xFFFF0000
	 * @param bgColor 0xFFFFFFAA
	 * @param str
	 * @param request
	 * @return
	 */
	@SuppressWarnings("deprecation")
	@RequestPath(value = "/{width}/{height}")
	public HttpResponse index(Integer width, Integer height, Integer color, Integer bgColor, String str, HttpRequest request) {
		HttpResponse ret;
		QrConfig qrConfig = new QrConfig();
		qrConfig.setHeight(height);
		qrConfig.setWidth(width);
		qrConfig.setBackColor(bgColor);
		qrConfig.setForeColor(color);
		qrConfig.setMargin(5);
		byte[] bs = QrCodeUtil.generatePng(str, qrConfig);
		ret = Resps.bytes(request, bs, "png");
		return ret;
	}
}
