- Вступ
- переклади
- конфігурація
- Постачальник послуг
- псевдоніми
- прості Ідеї
- Вставляння QR-код
- вживання
- генератора
- зміна Формату
- зміна Розміру
- Зміна кольору
- зміна поля
- Виправлення помилок
- кодування
- Merge
- Злиття двійкову Рядки
- Додаткові функції
- хелпери
- Електронна пошта
- Geo
- Номер телефону
- СМС (текстові повідомлення)
- WiFi
- Поширене використання QR-коду
- Використання за межами Laravel
Вступ
Звичайний QR-код простий у використанні обгортки для популярних рамок Laravel на основі чудовий роботи, наданої Bacon / BaconQrCode . Ми створили інтерфейс, який звичний і простий в установці для користувачів Laravel.
переклади
Ми шукаємо користувачів, які розмовляють китайською, корейською або японською мовами, які можуть допомогти перевести цей документ. Будь ласка, створіть пул реквест, якщо ви здатні зробити переклад!
конфігурація
Composer
По-перше, додайте пакет простого QR-код до require в файлі composer.json:
"Require": { "simplesoftwareio / simple-qrcode": "~ 2"}
Потім запустіть команду composer update.
Постачальник послуг
Laravel <= 5.4
Зареєструйте SimpleSoftwareIO \ QrCode \ QrCodeServiceProvider :: class в config / app.php в межах масиву providers.
псевдоніми
Laravel <= 5.4
В кінці, зареєструйте 'QrCode' => SimpleSoftwareIO \ QrCode \ Facades \ QrCode :: class в config / app.php файл конфігурації в межах масиву aliases.
прості Ідеї
Попередній Перегляд Печатки
Мати QR-код у всіх попередніх переглядах є одним з основних елементів, для яких ми використовуємо цей пакет. Це дозволяє нашим клієнтам, повернутися на вихідну сторінку після того, як вона буде надрукована з допомогою сканування коду. Ми домоглися цього, додавши footer.blade.php в наш файл.
<Div class = "visible-print text-center"> {!! QrCode :: size (100) -> generate (Request :: url ()); !!} <p> Скануйте мене, щоб повернутися на вихідну сторінку. </ P> </ div>
Вставляння QR-код
Ви можете вставити QR-код в електронну пошту, щоб дозволити користувачам швидко його сканувати. Нижче наведено приклад того, як зробити це за допомогою Laravel.
// Всередині шаблону Blade. <Img src = "{!! $ message-> embedData (QrCode :: format ( 'png') -> generate ( 'Введете мене в повідомлення по електронний пошті!'), 'QrCode.png', 'image / png' ) !!} ">
вживання
Основне Використання
Використовувати генератор для QR-код дуже легко. Найголовніший синтаксис:
QrCode :: generate ( 'Зробіть мене QR-кодом!');
Це створить QR-код кажучи "Зробіть мене QR-кодом!"
генератора
Generate використовується, щоб створити QR-код.
QrCode :: generate ( 'Зробіть мене QR-кодом!');
Увага! Цей метод повинен бути викликаний в кінці якщо використовуються в послідовності.
Generate за замовчуванням повертає рядок зображення у форматі SVG. Ви можете надрукувати це прямо в сучасний браузер всередині системи Blade в Laravel як зазначено далі:
{!! QrCode :: generate ( 'Зробіть мене QR-кодом!'); !!}
Метод generate має другий параметр, який буде приймати ім'я файлу і шлях для збереження QR-код.
QrCode :: generate ( 'Зробіть мене QR-кодом!', '../Public/qrcodes/qrcode.svg');
зміна Формату
Генератор QR-код встановлений для повернення зображення в форматі SVG за замовчуванням.
Будьте уважні! Метод format повинен викликатися перед усіма іншими параметрами форматування, такими як: size, color, backgroundColor, і margin.
Три формату на даний момент підтримуються; PNG, EPS, і SVG. Для зміни формату використовуйте наступний код:
QrCode :: format ( 'png'); // Повертає зображення у форматі PNG QrCode :: format ( 'eps'); // Повертає зображення в форматі EPS QrCode :: format ( 'svg'); // Повертає зображення у форматі SVG
зміна Розміру
Генератор QR-код за замовчуванням буде повертати найменший розмір в пікселях можливих для створення QR-код.
Ви можете змінити розмір QR-код за допомогою методу size. Просто вкажіть розмір бажаного в пікселях, використовуючи наступний синтаксис:
QrCode :: size (100);
Зміна кольору
Будьте обережні при зміні кольору в QR-код. Деяким читачам дуже складно читати QR-код в кольорі.
Все QR-коди повинні бути виражені в червоному, зеленому або синьому кольорі. Ви можете змінити колір QR-код за допомогою наступних дій:
QrCode :: color (255,0,255);
Зміни кольору фону також підтримуються і повинні бути виражені таким же чином.
QrCode :: backgroundColor (255,255,0);
зміна поля
Можливість зміни поля навколо QR-коду також підтримується. Просто вкажіть бажаний запас, використовуючи наступний синтаксис:
QrCode :: margin (100);
Виправлення помилок
Змінювати рівень корекції помилок легко. Просто використовуйте наступний синтаксис:
QrCode :: errorCorrection ( 'H');
Зазначене далі підтримується в варіантах для методу errorCorrection.
Виправлення помилок Гарантія L 7% кодових слів можуть бути відновлені. M 15% кодових слів можуть бути відновлені. Q 25% кодових слів можуть бути відновлені. H 30% кодових слів можуть бути відновлені.
Чим більше корекцій помилок використовується; тим більше стає QR-код і тим менше даних він може зберігати. Детальніше читайте про виправленні помилок .
кодування
Змініть кодування, яка використовується для створення QR-коду. За замовчуванням ISO-8859-1 обраний в якості кодера. Детальніше читайте про кодування символів . Ви можете змінити це на одну з таких дій:
QrCode :: encoding ( 'UTF-8') -> generate ( '' Зробіть мене QR-кодом зі спеціальними символами ♠ ♥ !! '); Набір Символів ISO-8859-1 ISO-8859-2 ISO-8859-3 ISO-8859-4 ISO-8859-5 ISO-8859-6 ISO-8859-7 ISO-8859-8 ISO-8859-9 ISO-8859 -10 ISO-8859-11 ISO-8859-12 ISO-8859-13 ISO-8859-14 ISO-8859-15 ISO-8859-16 SHIFT-JIS WINDOWS-1250 WINDOWS-1251 WINDOWS -1252 WINDOWS-1256 UTF-16BE UTF-8 ASCII GBK EUC-KR
Помилка позначена Could not encode content to ISO-8859-1 означає, що неправильний тип кодування був використаний. Ми рекомендуємо UTF-8 якщо ви не впевнені.
Merge
Метод merge об'єднує зображення над QR-кодом. Це зазвичай використовується для логотипів, розміщених в межах QR-коду.
QrCode :: merge ($ filename, $ percentage, $ absolute); // Створює QR-код із зображенням в центрі. QrCode :: format ( 'png') -> merge ( 'path-to-image.png') -> generate (); // Створює QR-код із зображенням в центрі. Вставлене зображення займає 30% QR-коду. QrCode :: format ( 'png') -> merge ( 'path-to-image.png', .3) -> generate (); // Створює QR-код із зображенням в центрі. Вставлене зображення займає 30% QR-коду. QrCode :: format ( 'png') -> merge ( 'http://www.google.com/someimage.png', .3, true) -> generate ();
Метод merge підтримує тільки формат PNG в цей час. Шлях до файлу є відносно базового додатки шляху, якщо $ absolute встановлений до false. Змініть цю змінну true щоб використовувати абсолютні шляхи.
Ви повинні використовувати високий рівень корекції помилок при використанні методу merge щоб гарантувати, що QR-код залишається читаним. Ми рекомендуємо використовувати errorCorrection ( 'H').
Злиття двійкову Рядки
Метод mergeString може бути використаний для досягнення такої ж, як виклик merge за винятком того, що дозволяє забезпечити строкове представлення файлу замість шляху до файлу. Це корисно при роботі з фасадом Storage. Цей інтерфейс дуже схожий на виклик merge.
QrCode :: mergeString (Storage :: get ( 'path / to / image.png'), $ percentage); // Створює QR-код із зображенням в центрі. QrCode :: format ( 'png') -> mergeString (Storage :: get ( 'path / to / image.png')) -> generate (); // Створює QR-код із зображенням в центрі. Вставлене зображення займає 30% QR-коду. QrCode :: format ( 'png') -> mergeString (Storage :: get ( 'path / to / image.png'), .3) -> generate ();
Як і в разі нормального виклику merge тільки PNG підтримується в цей час. Те ж саме відноситься до корекції помилок, рекомендується використовувати високі рівні.
Додаткові функції
Всі методи підтримки формування послідовності. Метод generate повинен бути викликаний останнім і будь-яка зміна формату має бути викликано в першу чергу. Наприклад, ви можете запустити одну з таких дій:
QrCode :: size (250) -> color (150,90,10) -> backgroundColor (10,14,244) -> generate ( 'Зробіть мене QR-кодом!'); QrCode :: format ( 'png') -> size (399) -> color (40,40,40) -> generate ( 'Зробіть мене QR-кодом!');
Ви можете відобразити зображення у форматі PNG без збереження файлу, надаючи необроблену рядок і кодування з base64_encode.
<Img lozy-src = "data: image / png; base64, {!! base64_encode (QrCode :: format ( 'png') -> size (100) -> generate ( 'Зробіть мене QR-кодом!'))! !} ">
хелпери
Що таке хелпери?
Хелпери дозволяють простий спосіб для створення QR-код, які змушують читача виконати певну дію при скануванні.
Електронна пошта
Цей хелпер генерує QR-код для електронний пошти, який в змозі заповнити адресу електронної пошти, тему і текст.
QrCode :: email ($ to, $ subject, $ body); // Заповнює адресата QrCode :: email ('[email protected] '); // Заповнює адресата, тему і текст повідомлення електронної пошти. QrCode :: email ('[email protected] ',' Це тема. ',' Це текст. '); // Заповнює тільки тему і текст повідомлення електронної пошти. QrCode :: email (null, 'Це тема.', 'Це текст.');
Geo
Цей хелпер генерує широту і довготу, так що телефон може читати і відкрити розташування в Google Maps або подібного програми.
QrCode :: geo ($ latitude, $ longitude); QrCode :: geo (37.822214, -122.481769);
Номер телефону
Цей хелпер генерує QR-код, який можна сканувати, а потім набирає номер.
QrCode :: phoneNumber ($ phoneNumber); QrCode :: phoneNumber ( '555-555-5555'); QrCode :: phoneNumber ( '1-800-Laravel');
СМС (текстові повідомлення)
Цей хелпер створює СМС повідомлення, які можуть бути вже заповнені з адресою і текстом повідомлення.
QrCode :: SMS ($ phoneNumber, $ message); // Створює СМС де номер телефону вже заповнений. QrCode :: SMS ( '555-555-5555'); // Створює СМС де номер і текст вже заповнені. QrCode :: SMS ( '555-555-5555', 'текст повідомлення.');
WiFi
Ці хелпери створюють скановані QR-коди, які можуть підключити телефон до мережі Wi-Fi.
QrCode :: wiFi ([ 'encryption' => 'WPA / WEP', 'ssid' => 'ідентифікатор мережі (SSID)', 'password' => 'пароль мережі', 'hidden' => 'Якщо SSID мережі явлалась прихованим. ']); // Підключається до відкритої мережі WiFi. QrCode :: wiFi ([ 'ssid' => 'Назва мережі',]); // Підключається до відкритої, прихованої мережі WiFi. QrCode :: wiFi ([ 'ssid' => 'Назва мережі', 'hidden' => 'true']); // Підключається до захищеної мережі. QrCode :: wiFi ([ 'ssid' => 'Назва мережі', 'encryption' => 'WPA', 'password' => 'Мій пароль']);
Сканування WiFi в даний час не підтримує на продукти Apple.
Поширене використання QR-коду
Ви можете використовувати префікс, знайдений в таблиці нижче, у секції generate щоб створити QR-код для зберігання більш розширеної інформації:
QrCode :: generate ( 'http://www.simplesoftware.io'); Застосування Префікс Приклад Силка на сайт http: // http://www.simplesoftware.io Забезпечені URL https: // https://www.simplesoftware.io Адреса електронної пошти mailto: mailto: [email protected] Номер телефону tel: tel: 555-555-5555 Текстові повідомлення (СМС) sms: sms: 555-555-5555 Текстові повідомлення (СМС) з введенням повідомленням sms: sms :: Я введене повідомлення Текстові повідомлення (СМС) з введенням повідомленням і номером телефону sms: sms: 555-555-5555: Я введене повідомлення Geo geo: geo: -78.400364, -85.916993 meCard mecard: mECARD: Simple, Software; Some Address, Somewhere, 20430; TEL: 555-555-5555; EMAIL: support @ simplesoftware .io; VCard BEGIN: VCARD приклади Wifi wifi: wifi: WEP / WPA; SSID; PSK; Hidden (True / False)
Використання за межами Laravel
Ви можете використовувати цей пакет за межами Laravel від інстанцірованія нового класу BaconQrCodeGenerator.
use SimpleSoftwareIO \ QrCode \ BaconQrCodeGenerator; $ Qrcode = new BaconQrCodeGenerator; $ Qrcode-> size (500) -> generate ( 'Створіть QR-код без Laravel!');