EstervQrCode 1.1.1
Library for qr code manipulation

This repo produce a QML Module with custom types that can detect and decode QRCODEs.

The types should be style independent, but the colors used relies on the EstervDesigns Simple style. If you want to change the colors in your top qml file one can do

import Esterv.Styles.Simple
...
Component.onCompleted:
{
Style.frontColor1= (Style.theme)?LightThemeColor:DarkThemeColor //Like control.palette.text
Style.frontColor2= ...
Style.frontColor3= ...
Style.backColor1= ...
Style.backColor2= ...
Style.backColor3= ...
}

The detection and decoding is performed by OpenCV libraries. In case OpenCV is not found on your system CMake will download pre compiled libraries from my action releases.

The library use QtMultimedia if not compiling for wasm. If compiling for wasm the library creates a custom ImageProvider that communicates with the browser.

You can play with the decoder on this page

Adding the module to your CMake project

include(FetchContent)
FetchContent_Declare(
EstervQrCode
GIT_REPOSITORY https://github.com/EddyTheCo/Esterv.Utils.QrCode.git
GIT_TAG vMAJOR.MINOR.PATCH
FIND_PACKAGE_ARGS MAJOR.MINOR COMPONENTS EstervQtQrDec EstervQtQrDec-dev EstervQtQrDec-qml CONFIG
)
FetchContent_MakeAvailable(EstervQrCode)
target_link_libraries(<target> <PRIVATE|PUBLIC|INTERFACE> Esterv::QtQrDec)
target_link_libraries(<target> <PRIVATE|PUBLIC|INTERFACE> $<$<STREQUAL:$<TARGET_PROPERTY:Esterv::QtQrDec,TYPE>,STATIC_LIBRARY>:Esterv::QtQrDecplugin>)

Examples

The [examples](examples) folder shows the use of the different custom types provided by the QML module.

Contributing

We appreciate any contribution!

You can open an issue or request a feature also. You can open a PR to the develop branch and the CI/CD will take care of the rest. Make sure to acknowledge your work, ideas when contributing.