@ispa.io/vrcode v1.5.0
A Vue component to generate QR Code and download.
Table of contents
Getting started
Install
npm i @ispa.io/vrcode // npm
yarn add @ispa.io/vrcode // yarnUsage
import Vue from 'vue';
import vrcode from '@ispa.io/vrcode'
Vue.component('vrcode', vrcode);Example
<vrcode
:download="{
text: 'Download',
filename: 'file-name.png',
visible: true, type: 'image/png'
}"
value="A Vue component to generate QR Code and download."
:options="{
size: 200,
level: 'Q'
}"
></vrcode>Props
value
- Type:
StringorObject - Default:
undefined
The value of the QR code. Object type used for some helpers tool below.
download
Passing download props, to show download button, it support:
Type:
Objecttext- button inner textvisible- setting download button visible or notstyle- setting download button styleclass- setting download button class nametype- image type, such as image/png; use mime type for exactly force downloadfilename- file name to download
You can only download the qrcode to image by using type: canvas
type
- Type:
String - Default:
'canvas'
You can use canvas or svg. But SVG not support to download now.
transparent
- Type:
Boolean - Default:
false
Transparent background for canvas and download png image. If transparent is setted, background option will not work.
Notes: If after you run npm update but the QR Code not generate transparent background, please run npm clean-install and run build again.
logo
- Type:
String - Default:
null
Your Brand Logo URL.
opacity
- Type:
Number - Default:
100
Opacity of Logo, by default 100 ~ opacity: 1. We will division this number to 100 and set opacity to it.
options
- Type:
Object Values:
level- Type:
String - Default:
'L'
Possible levels are shown below: | Level | Error resistance | |------------------|:----------------:| | L (Low) | ~7% | | M (Medium) | ~15% | | Q (Quartile) | ~25% | | H (High) | ~30% |
- Type:
padding- Type:
Number - Default:
10
This is padding border of image (Because users is difficult to scan with dark mode/dark background, so we need a white padding/border)
- Type:
background- Type:
String - Default:
'#fff'
- Type:
foreground- Type:
String - Default:
'#000'
- Type:
className- Type:
String - Default:
''
- Type:
Helpers
What are helpers?
Helpers are an easy way to create QrCodes that cause a reader to perform a certain action when scanned.
This helper generates an e-mail qrcode that is able to fill in the e-mail address, subject, and body.
<vrcode
:value="{
address: 'email@example.com',
subject: 'Hello',
body: 'This is body'
}"
helpers="email"
></vrcode>Call a number
This helper generates a QrCode that can be scanned and then dials a number.
<vrcode
value="+1 98-765-43-21"
helpers="call"
></vrcode>SMS (Text Messages)
This helper makes SMS messages that can be prefilled with the send to address and body of the message.
<vrcode
:value="{
number: '+1 98-765-43-21',
message: 'Hello, this message can be null'
}"
helpers="sms"
></vrcode>Geo
This helper generates a latitude and longitude that a phone can read and opens the location in Google Maps or similar app.
<vrcode
:value="{
lng: 10.7800965,
lat: 106.6854548,
name: 'QR Guiding'
}"
helpers="geo"
></vrcode>Wifi
This helpers makes scannable QrCodes that can connect a phone to a WiFI network.
<vrcode
:value="{
encrypt: 'WPA',
ssid: 'Your SSID or Network Name',
password: 'Your-Wifi-Password',
hidden: true
}"
helpers="wifi"
></vrcode>encrypt:WPA,WEPor can benullhidden:trueorfalse
Coin Wallet Address
This helper generates a scannable bitcoin (and other coins) to send payments.
<vrcode
:value="{
coin: 'ethereum',
address: '0x0000000000000000000000000000000000000000',
amount: 0.00,
message: 'Hello world'
}"
helpers="coin"
></vrcode>coin: default isbitcoin, you can change it by your own coin code (ethereum,bitcoincash,dash...)coin,address,amounthas requiredmessagehas not required.
Event
This helper generates a scannable event tag to add into calendar events.
<vrcode
:value="{
name: 'Event name',
allDay: false,
start: '20200702T080000Z',
end: '20200702T2030000Z',
location: 'Event location',
description: 'Event descriptions'
}"
helpers="event"
></vrcode>allDay: if settrue=> start and end has format:20200702startandend: timezone is UTC
meCard AND vCard
This helpers makes scannable QrCodes that add to contact list. You can use mecard or vcard. Notes that mecard has not title value.
<vrcode
:value="{
name: 'Your name',
company: 'Your company name',
phone: 'Your Phone number',
url: 'Your Website Url',
email: 'Your Email address',
address: 'Your Address',
title: 'Your Title',
note: 'Your Notes'
}"
helpers="vcard"
></vrcode>Milestone
- Transparent background (Finished at 2020-08-08)
- PNG transparent background download (Finished at 2020-08-08)
- With centered logo (Finished at 2020-08-28)
Versioning
Maintained under the Semantic Versioning guidelines.
License
Invite me a cup of coffee
If you like this project and want to contribute us, then you can send us a cup of coffee by this ways below:
| PAYPAL.ME | MOMO App (Vietnam) |
|---|---|
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago