|
@@ -5,6 +5,9 @@ namespace app\api\controller;
|
|
|
|
|
|
|
|
|
use Endroid\QrCode\Builder\Builder;
|
|
|
+use Endroid\QrCode\Label\Alignment\LabelAlignmentCenter;
|
|
|
+use Endroid\QrCode\Label\Alignment\LabelAlignmentLeft;
|
|
|
+use Endroid\QrCode\Label\Font\NotoSans;
|
|
|
use Endroid\QrCode\Writer\PngWriter;
|
|
|
use think\facade\Log;
|
|
|
|
|
@@ -12,23 +15,29 @@ class Qrcode extends Base
|
|
|
{
|
|
|
public function online()
|
|
|
{
|
|
|
- $param=input("param.");
|
|
|
- $rules=[
|
|
|
- "text"=>"require",
|
|
|
- "size"=>"number|between:100,1000",
|
|
|
+ $param = input("param.");
|
|
|
+ $rules = [
|
|
|
+ "text" => "require",
|
|
|
+ "size" => "number|between:100,1000",
|
|
|
];
|
|
|
- $this->autoValid($rules,$param);
|
|
|
+ $this->autoValid($rules, $param);
|
|
|
$text = input("text");
|
|
|
- $size=input("size",300);
|
|
|
- $label=input("label","");
|
|
|
+ $size = input("size", 300);
|
|
|
+ $label = input("label", "");
|
|
|
+ $labelSize = input("lable_size", 44);
|
|
|
if ($text) {
|
|
|
$text = urldecode2($text);
|
|
|
}
|
|
|
- if($label){
|
|
|
+ if ($label) {
|
|
|
$label = urldecode2($label);
|
|
|
}
|
|
|
//二维码生成的包:https://packagist.org/packages/endroid/qr-code
|
|
|
- $result = Builder::create()->writer(new PngWriter())->data($text)->labelText($label)->size($size)->build();
|
|
|
+ $result = Builder::create()->writer(new PngWriter())->data($text)
|
|
|
+ ->labelText($label)
|
|
|
+ ->labelAlignment(new LabelAlignmentCenter())
|
|
|
+ ->labelFont(new NotoSans($labelSize))
|
|
|
+ ->size($size)
|
|
|
+ ->build();
|
|
|
return response($result->getString(), 200)->contentType($result->getMimeType());
|
|
|
}
|
|
|
|