Package Exports
- vue3-qr-code-styling
- vue3-qr-code-styling/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vue3-qr-code-styling) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Vue3 QR Code Styling
JavaScript library for generating QR codes with a logo and styling.
this clone copy of https://qr-code-styling.com
If you have issues / suggestions / notes / questions, please open an issue or contact me. Let's create a cool library together.
Examples
Installation
npm install vue3-qr-code-styling
Usage
<template>
<div>
<VueQr3
:width="200"
:height="200"
data="https://diadal.com.ng"
:qrOptions="{ typeNumber: 0, mode: 'Byte', errorCorrectionLevel: 'H' }"
:imageOptions="{ hideBackgroundDots: true, imageSize: 0.4, margin: 0 }"
:dotsOptions="{
type: 'dots',
color: '#26249a',
gradient: {
type: 'linear',
rotation: 0,
colorStops: [
{ offset: 0, color: '#26249a' },
{ offset: 1, color: '#26249a' },
],
},
}"
:backgroundOptions="{ color: '#ffffff' }"
image="https://diadal.com.ng/icons/favicon-96x96.png"
:cornersSquareOptions="{ type: 'dot', color: '#000000' }"
:cornersDotOptions="{ type: undefined, color: '#000000' }"
fileExt="png"
:download="true"
myclass="my-qur"
imgclass="img-qr"
downloadButton="my-button"
:downloadOptions="{ name: 'vqr', extension: 'png' }"
>
</VueQr3>
</div>
</template>
<script lang="ts">
import {
defineComponent,
onBeforeUnmount,
defineAsyncComponent
} from 'vue'
export default defineComponent({
name: 'VueQr3',
components: {
VueQr3: defineAsyncComponent(() =>
Promise.resolve(import('vue3-qr-code-styling'))
)
},
setup () {
return {
}
}
})
</script>
<style lang="sass">
.my-qur
// overflow-wrap: anywhere
</style>
API Documentation
VQRCodeStyling instance
new VQRCodeStyling(options) => VQRCodeStyling
Param | Type | Description |
---|---|---|
options | object | Init object |
options
structure
Property | Type | Default Value | Description |
---|---|---|---|
width | number | 300 |
Size of canvas |
height | number | 300 |
Size of canvas |
download | boolean | false | To endable download button |
myclass | string | '' | Image DIV class |
imgclass | string | '' | Image class |
downloadButton | string | '' | download button class |
downloadOptions | object | download option name and extension | |
data | string | The date will be encoded to the QR code | |
image | string | The image will be copied to the center of the QR code | |
margin | number | 0 |
Margin around canvas |
qrOptions | object | Options will be passed to qrcode-generator lib |
|
imageOptions | object | Specific image options, details see below | |
dotsOptions | object | Dots styling options | |
cornersSquareOptions | object | Square in the corners styling options | |
cornersDotOptionsHelper | object | Dots in the corners styling options | |
backgroundOptions | object | QR background styling options |
options.qrOptions
structure
Property | Type | Default Value |
---|---|---|
typeNumber | number (0 - 40 ) |
0 |
mode | string ('Numeric' 'Alphanumeric' 'Byte' 'Kanji' ) |
|
errorCorrectionLevel | string ('L' 'M' 'Q' 'H' ) |
'Q' |
options.imageOptions
structure
Property | Type | Default Value | Description |
---|---|---|---|
hideBackgroundDots | boolean | true |
Hide all dots covered by the image |
imageSize | number | 0.4 |
Coefficient of the image size. Not recommended to use ove 0.5. Lower is better |
margin | number | 0 |
Margin of the image in px |
crossOrigin | string('anonymous' 'use-credentials' ) |
Set "anonymous" if you want to download QR code from other origins. |
options.dotsOptions
structure
Property | Type | Default Value | Description |
---|---|---|---|
color | string | '#000' |
Color of QR dots |
gradient | object | Gradient of QR dots | |
type | string ('rounded' 'dots' 'classy' 'classy-rounded' 'square' 'extra-rounded' ) |
'square' |
Style of QR dots |
options.backgroundOptions
structure
Property | Type | Default Value |
---|---|---|
color | string | '#fff' |
gradient | object |
options.cornersSquareOptions
structure
Property | Type | Default Value | Description |
---|---|---|---|
color | string | Color of Corners Square | |
gradient | object | Gradient of Corners Square | |
type | string ('dot' 'square' 'extra-rounded' ) |
Style of Corners Square |
options.cornersDotOptions
structure
Property | Type | Default Value | Description |
---|---|---|---|
color | string | Color of Corners Dot | |
gradient | object | Gradient of Corners Dot | |
type | string ('dot' 'square' ) |
Style of Corners Dot |
Gradient structure
options.dotsOptions.gradient
options.backgroundOptions.gradient
options.cornersSquareOptions.gradient
options.cornersDotOptions.gradient
Property | Type | Default Value | Description |
---|---|---|---|
type | string ('linear' 'radial' ) |
"linear" | Type of gradient spread |
rotation | number | 0 | Rotation of gradient in radians (Math.PI === 180 degrees) |
colorStops | array of objects | Gradient colors. Example [{ offset: 0, color: 'blue' }, { offset: 1, color: 'red' }] |
Gradient colorStops structure
options.dotsOptions.gradient.colorStops[]
options.backgroundOptions.gradient.colorStops[]
options.cornersSquareOptions.gradient.colorStops[]
options.cornersDotOptions.gradient.colorStops[]
Property | Type | Default Value | Description |
---|---|---|---|
offset | number (0 - 1 ) |
Position of color in gradient range | |
color | string | Color of stop in gradient range |
VQRCodeStyling methods
VQRCodeStyling.append(container) => void
Param | Type | Description |
---|---|---|
container | DOM element | This container will be used for appending of the QR code |
VQRCodeStyling.update(options) => void
Param | Type | Description |
---|---|---|
options | object | The same options as for initialization |
VQRCodeStyling.download(downloadOptions) => void
Param | Type | Description |
---|---|---|
downloadOptions | object | Options with extension and name of file (not required) |
downloadOptions
structure
Property | Type | Default Value | Description |
---|---|---|---|
name | string | 'qr' |
Name of the downloaded file |
extension | string ('png' 'jpeg' 'webp' ) |
'png' |
File extension |
if any issue check
also you can buy me a coffee @ Patreon
License
MIT License. Copyright (c) 2021 Diadal Nig