現在很多地方都會使 QrCode 方便使用手機掃描後直接連結到相對應的網站。
安裝
參考 SimpleSoftwareIO/simple-qrcode 官網文件 來安裝套件
# 目前最新版v4
composer require simplesoftwareio/simple-qrcode "~4"
# 安裝過程中碰到 php memory 不足問題要將 php.ini 中的 memory_limit 調大或改成 -1
直接使用在 Blade 中,
# 產生網站的QrCode
<div class="visible-print text-center">
{!! QrCode::size(100)->generate(Request::url()); !!}
<p>Scan me to return to the original page.</p>
</div>
使用在程式中,
//程式中需引進 QrCode facade
use SimpleSoftwareIO\QrCode\Facades\QrCode;
// 將 $qrCodeData製作成100x100尺寸的PNG格式圖片, format 預設是SVG,支援 PNG 及 EPS 格式
QrCode::generate('$qrCodeData')->size(100)->format('png');
//顏色
QrCode::color(255, 0, 0); // Red QrCode
QrCode::color(255, 0, 0, 25); //Red QrCode with 25% transparency
//背景顏色
QrCode::backgroundColor(255, 0, 0); // Red background QrCode
QrCode::backgroundColor(255, 0, 0, 25); //Red background QrCode with 25% transparency
//中間浮水印
QrCode::format('png')->merge('path-to-image.png')->generate();
//其他詳細設定請參考官網說明
https://www.simplesoftware.io/#/docs/simple-qrcode
ImageMagick
安裝 ImageMagick (XAMPP)
到官網下載 Windows 版 ImageMagick,依照你的系統選擇正確的安裝包。
安裝完成後輸入 magick -version 確認是否安裝成功。
接著需要安裝 Imagick for PHP DLL 給 XAMPP 使用,到 Imagick package in the PECL website 下載 Windows 版的 DLL,目前為 3.4.4 版. (選擇相對應PHP版本的 Imagick DLL)
打開下載回來的 zip 檔案,將裡面的 php_imagick.dll 檔案複製到 XAMPP 的 php/ext 目錄中。
修改 php.ini 將 php_imagick.dll 導入
# Imagick Extension
extension=php_imagick.dll
這樣就好了? 還沒呢. 接著到 PECL Deps 下載 相對應 Windows ImageMagick 版本的 Apache Binaries 檔案。
打開下載回來的 zip 檔案,將裡面 bin 目錄下所有 dll 檔案 (除了ImageMagickObject.dll) 大約 149 個檔案 ( CORE_* and IM_MOD_* ) 通通複製到 XAMPP 的 apache/bin 目錄中。
重新啟動 XAMPP 的 Apache,並開啟 phpinfo 確認是否已被正確裝載。
在終端操作 Laravel artisan指令時出現版本不符問題
PHP Warning: Version warning: Imagick was compiled against ImageMagick version 1799 but version 1802 is loaded. Imagick will run but may behave surprisingly in Unknown on line 0
Warning: Version warning: Imagick was compiled against ImageMagick version 1799 but version 1802 is loaded. Imagick will run but may behave surprisingly in Unknown on line 0
在 php.ini 中加入取消檢查版本問題即可
imagick.skip_version_check = 1