日韩精品欧美激情国产一区_中文无码精品一区二区三区在线_岛国毛片AV在线无码不卡_亞洲歐美日韓精品在線_使劲操好爽好粗视频在线播放_日韩一区欧美二区_八戒八戒网影院在线观看神马_亚洲怡红院在线色网_av无码不卡亚洲电影_国产麻豆媒体MDX

使用PHP生成中間帶logo標(biāo)志的二維碼的方法

時間:2017-11-24 15:03:33 類型:PHP
字號:    

我們程序員在實際的項目開發(fā)過程中,因項目需求需要生成中間帶logo標(biāo)志的二維碼,今天南昌雅騰教育分享使用php生成中間帶logo標(biāo)志的二維碼的方法,供大家參考使用學(xué)習(xí)。

這是一個二維碼生成器,它可以幫助你以簡單的方式生成二維碼,并且可以設(shè)置二維碼中間的logo圖標(biāo),使用非常簡單,并且提供了一個Symfony包,可以快速整合到你的項目中。

安裝

使用Composer來安裝這個庫。

composer require endroid/qrcode 

基本用法

簡單幾行代碼,就可以生成一個普通的二維碼:

require_once('vendor/autoload.php'); 
  use Endroid\QrCode\QrCode; 
  $qrCode = new QrCode('Helloweba歡迎您!'); 
 
header('Content-Type: '.$qrCode->getContentType());  echo $qrCode->writeString(); 

高級用法

QrCode提供了許多方法參數(shù)設(shè)置,可以滿足各種需求場景。比如需要生成中間帶logo的二維碼,需要保存二維碼圖片等。請看以下代碼:

require_once('vendor/autoload.php'); 
  use Endroid\QrCode\ErrorCorrectionLevel;  use Endroid\QrCode\LabelAlignment;  use Endroid\QrCode\QrCode;  use Symfony\Component\HttpFoundation\Response; 
  // Create a basic QR code  $qrCode = new QrCode('Life is too short to be generating QR codes');  $qrCode->setSize(300); 
  // Set advanced options  $qrCode 
    ->setWriterByName('png') 
    ->setMargin(10) 
    ->setSize(200) 
    ->setEncoding('UTF-8') 
    ->setErrorCorrectionLevel(ErrorCorrectionLevel::HIGH) 
    ->setForegroundColor(['r' => 0'g' => 0'b' => 0]) 
    ->setBackgroundColor(['r' => 255'g' => 255'b' => 255]) 
    ->setLabel('手機(jī)掃一掃'12) 
    ->setLogoPath('logo.png') 
    ->setLogoWidth(64) 
    ->setValidateResult(false) 
; 
  // Directly output the QR code 
header('Content-Type: '.$qrCode->getContentType());  echo $qrCode->writeString(); 
  // Save it to a file  //$qrCode->writeFile(__DIR__.'/qrcode.png'); 
  // Create a response object  $response = new Response($qrCode->writeString(), Response::HTTP_OK, ['Content-Type' => $qrCode->getContentType()]); 

運(yùn)行以上代碼,你會發(fā)現(xiàn)生成了一個中間有l(wèi)ogo小圖片的二維碼,以上代碼中:

setSize():設(shè)置二維碼圖片的尺寸,數(shù)字整型,默認(rèn)長寬是300px的圖片。

setErrorCorrectionLevel():設(shè)置糾錯級別,可以是LOW,MEDIUM,QUARTILE,HIGH

setForegroundColor():設(shè)置前置色,rgb,默認(rèn)黑色

setBackgroundColor():設(shè)置背景色,rgb,默認(rèn)白色

setLabel():設(shè)置文字說明

setLogoPath():設(shè)置中間logo路徑地址

setLogoWidth():設(shè)置logo寬度大小,數(shù)字


南昌雅騰教育專注PHP軟件開發(fā)+WEB前端開發(fā)技術(shù)培訓(xùn),小班面授+手把手輔導(dǎo)+理論與項目開發(fā)結(jié)合教學(xué)的培養(yǎng)方式。