ساخت QrCode در لاراول

ترجمه و تالیف : امیررضا سیستانه ای
تاریخ انتشار : 13 خرداد 98
خواندن در 48 ثانیه
دسته بندی ها : لاراول

در این مقاله میخواهیم درمورد نحوه ساخت استفاده از QrCode ها در لاراول صحبت کنیم.

پکیجی که برای این کار ازش استفاده می کنیم Simpe QrCode هست که یک راه راحت برای استفاده از QrCode ها در لاراول هست و از پکیج BaconQrCode گرفته شده.

نصب و راه اندازی

ابتدا پکیح Simple QrCode رو به فایل composer.json اضافه کنید :

"require": {
    "simplesoftwareio/simple-qrcode": "~1"
}

سپس دستور composer update رو بزنید.

Service Provider

برای لاراول 4 کد SimpleSoftwareIO\QrCode\QrCodeServiceProvider رو در آرایه providers فایل app/config/app.php بریزید.

برای لاراول 5 کد SimpleSoftwareIO\QrCode\QrCodeServiceProvider::class رو در آرایه providers فایل config/app.php وارد کنید.

Aliases

برای لاراول 4 کد 'QrCode' => 'SimpleSoftwareIO\QrCode\Facades\QrCode' رو در آرایه aliases فایل app/config/app.php بریزید.

برای لاراول 5 کد 'QrCode' => SimpleSoftwareIO\QrCode\Facades\QrCode::class رو در آرایه aliases فایل config/app.php بریزید.

چند ایده ساده

نمایش QrCode در پرینت ها

یکی از کارهایی که با 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 رو در ایمیل قرار بدید تا کاربرانتون براحتی اسکن کنند. قطعه کد زیر مثالی از انجام این کار هست :

//Inside of a blade template.
<img class='lozad' data-src='{!!$message->embedData(QrCode::format('png')->generate('Embed me into an e-mail!'), 'QrCode.png', 'image/png')!!}'>

نحوه استفاده

- استفاده ساده

یک استفاده پایه از qrCode generator بصورت زیر هست :

QrCode::generate('Make me into a QrCode!');

این یک QrCode میسازه که میگه Make me into a QrCode!

- Generate

از generate برای ساخت QrCode استفاده میشه :

QrCode::generate('Make me into a QrCode!');

دقت کنید اگر در یک زنجیره کد میزنید این متد آخر باید نوشته بشه.

شما میتونید این رو بصورت مستقیم به یک مرورگر مدرن پرینت بگیرید. برای اینکار در لاراول از دستور زیر استفاده کنید :

{!! QrCode::generate('Make me into a QrCode!'); !!}

متد generate پارامتر دومی داره که نام فایل و مسیر ذخیره سازی QrCode رو میگیره :

QrCode::generate('Make me into a QrCode!', '../public/qrcodes/qrcode.svg');

تغییر فرمت

این فایل بصورت پیشفرض SVG هست. فرمت هایی که الان ساپورت می شوند : png, eps, svg هستند. برای تغییر فرمت از این کد استفاده کنید :

QrCode::format('png');  //Will return a PNG image
QrCode::format('eps');  //Will return a EPS image
QrCode::format('svg');  //Will return a SVG image

تغییر سایز

این پکیج بصورت پیشفرض کمترین سایز رو تولید میکنه. برای اینکه سایز رو تغییر بدید از متد size استفاده کنید. 

QrCode::size(100);

سایر توابع

QrCode::color(255,0,255);

QrCode::backgroundColor(255,255,0);

QrCode::margin(100);

QrCode::errorCorrection('H');

QrCode::encoding('UTF-8')->generate('Make me a QrCode with special symbols ♠♥!!');

QrCode::merge($filename, $percentage, $absolute);

//Generates a QrCode with an image centered in the middle.
QrCode::format('png')->merge('path-to-image.png')->generate();

//Generates a QrCode with an image centered in the middle.  The inserted image takes up 30% of the QrCode.
QrCode::format('png')->merge('path-to-image.png', .3)->generate();

//Generates a QrCode with an image centered in the middle.  The inserted image takes up 30% of the QrCode.
QrCode::format('png')->merge('http://www.google.com/someimage.png', .3, true)->generate();

مستندات

دیدگاه‌ها و پرسش‌ها

برای ارسال نظر لازم است ابتدا وارد سایت شوید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید