這篇文章主要介紹了關於Laravel 產生二維碼的方法,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下
(本執行個體laravel 版本 >=5.6, PHP版本 >=7.0)
1、首先,添加 QrCode 包添加到你的 composer.json
檔案的 require
裡:
"require": { "simplesoftwareio/simple-qrcode": "~2"}
然後,運行 composer update
.
2、基本使用
使用QrCode的Generator非常方便. 多數情況下只要這樣:
QrCode::generate('Make me into a QrCode!');
這就能建立一個掃描後顯示內容是:"Make me into a QrCode!" 的二維碼了.
3、自己定義輸出圖片格式
QrCode Generator 預設輸出SVG格式的圖片.
注意! format
方法必須第一個被設定, 其它的設定如: size
, color
, backgroundColor
, 和 margin
的設定必須在它的後邊.
支援 PNG,EPS,SVG 三種格式,設定方式如下:
QrCode::format('png'); //Will return a PNG imageQrCode::format('eps'); //Will return a EPS imageQrCode::format('svg'); //Will return a SVG image
4、尺寸設定
QrCode 的 Generator 預設返回可能最小像素單位的二維碼.
你可以使用 size
方法去設定它的尺寸.下方是設定像素尺寸的執行個體:
QrCode::size(100);
5、顏色設定
注意改變顏色後,可能會導致某些裝置難以識別.
顏色設定的格式必須是RBG格式. 設定方式如下:
QrCode::color(255,0,255);
設定背景色的方法也是一樣的:
QrCode::backgroundColor(255,255,0);
6、邊距設定
也支援設定邊距. 設定方式如下:
QrCode::margin(100);
7、加LOGO圖
merge
方法可以讓QrCode為產生結果加上LOGO圖片. 下方是常見的為二維碼加LOGO圖片的使用方式.
QrCode::merge($filename, $percentage, $absolute); //產生一個中間有LOGO圖片的二維碼 QrCode::format('png')->merge('path-to-image.png')->generate(); //產生一個中間有LOGO圖片的二維碼,且LOGO圖片占整個二維碼圖片的30%. QrCode::format('png')->merge('path-to-image.png', .3)->generate(); //使用絕對路徑的LOGO圖片地址建立二維碼,LOGO圖片占整個二維碼圖片的30%. QrCode::format('png')->merge('http://www.google.com/someimage.png', .3, true)->generate();
merge
方法當前只支援PNG格式的圖片 預設使用相對於應用程式的根路徑,把第三個參數設定為 true
就能切換到使用絕對路徑
如下是一個完整的小demo:
/** * @param int $size 此參數為二維碼的尺寸,是像素值 * @param string $info 此參數為二維碼的內容,內容為文字時,掃描展示的是此文字; * 內容為http://或https://開頭的網址時,開啟的就是此網址 * @return mixed * */ public static function createQrCode($size,$info) { $size = $size ?: 400; $info = $info ?: "success"; $res = QrCode::size($size)->color(50,255,100)->generate($info); return $res; }
以上就是本文的全部內容,希望對大家的學習有所協助,更多相關內容請關注topic.alibabacloud.com!