85 Commits

Author SHA1 Message Date
Nikolaos Ftylitakis
d48a139d03 At Barcode Encode image provider support explicitSize option in cases where the Item that requests the image can not provide requested size. Such cae is at #191 where the image was requested through an HTML tag in a RichText instead being source to an Image. 2021-05-06 13:12:06 +03:00
Nikolaos Ftylitakis
cfc728583b changed all QML versions from 2.3 to 3.1 2021-01-26 11:51:42 +02:00
Nikolaos Ftylitakis
71101ccf5d Replaced QtQuick.Dialogs with Qt.labs.platform 2021-01-26 11:48:11 +02:00
Nikolaos Ftylitakis
9c80b90d7c Updated REAME files with Qt 6 limitations 2021-01-26 11:39:59 +02:00
Nikos Ftylitakis
05e3532888 support configurable image source type (normal / inverted) and configrable tryHarder operations (TroroughScanning and Rotate) #171 2020-06-15 19:45:19 +03:00
Nikos Ftylitakis
9d70b9a33b Change all Version* usages to Ref<Version> to avoid valrgind of reporting memory leak on static Version objects. #155 2020-02-12 11:37:14 +02:00
Nikos Ftylitakis
c1f4379ec7 @BarcodeEncoder: translate the URL persentage encoded special character to the corresponding UTF8 code before encoding to QR Code. #134 2020-01-13 11:27:31 +02:00
Nikos Ftylitakis
4b7f8b6a71 complementary commit for 10ba99586e955ae1be12114fb7a7bb60e0ba809e 2019-10-15 10:16:01 +03:00
Nikos Ftylitakis
10ba99586e replace all occurences of '#include <QZXing.h>' with '#include QZXing.h'. Possible fix for #81 #118 #123 2019-10-15 10:04:09 +03:00
Nikos Ftylitakis
742f3d9729 minor code cleanup, remove forgotten comment. 2019-10-03 17:13:56 +03:00
Nikos Ftylitakis
2bf62bcf3f update from master 2019-10-03 17:11:12 +03:00
Nikos Ftylitakis
b55e749b5a update UI to be able to play around with background colors and transparency 2019-10-03 17:08:23 +03:00
Nikolaos Ftylitakis
6070e98f38
Add conditional builds in pro (#141)
* first refactoring on QZXing.pri to group sources based on type of barcode and operation

* Moved the newly created source code groups of functionalities to separate pri file (QZXing-components.pri).

* In QZXing.pri include QZXing-components.pri having previously added as configuration all the available modules to preserve the backward compatibility.

* Deactivate parts of code based on the configuration of the pro file. (Work in Progress).

* fix compilation error

* Fix include issue when only "enable_encoder_qr_code" config is used through QZXing-components.pri

Update example projects to use QZXing-components.pri
2019-10-03 15:56:14 +03:00
Nikos Ftylitakis
c077e8e760 Created QZXingEncoderConfig struct to hold the configuration of the encode operation. It has been extracted to a struct since the parameters are increasing.
Created overloaded function for encodeData to use the QZXingEncoderConfig. The old implementation of encodeData now translates its arguments into a QZXingEncoderConfig and calls the overloaded function.

Updated regex in QZXingImageProvider to be aware of the new configuration of border.

Updated BarcodeEncoder example UI to allow the control of the border option.
2019-09-29 20:18:04 +03:00
Nikos Ftylitakis
98c2479ca3 fix typo at the configuration parameters of Encoder. Old value: "corretionLevel" -> new value "correctionLevel" 2019-09-29 01:43:03 +03:00
Björn Bidar
f51cc2fdbe update gradle build file to latest android support and gradle tools 2019-04-12 10:28:18 +02:00
Björn Bidar
006e091f91 update gradle version of example 2019-04-12 10:27:44 +02:00
Alexander Stillich
3f3a89b2ba Introduced ZXING_NULLPTR and ZXING_NOEXCEPT to abstract differences between C+11 and non-C++11 compilers
Fixed warnings in QZXingFilter.cpp
Removed C++11 requirement from all .pro files
Set compiler warning flags via CONFIG += warn_on instead of using GCC specific switches
2018-11-16 13:05:58 +01:00
Alexander Stillich
d2242ac24a Fixed XXX has no out-of-line virtual method definitions; its vtable will be emitted in every translation unit in Exception and derived classes
Enabled -Wall and -Wextra
2018-11-05 14:50:45 +01:00
favoritas37
9c361587a4 Updated QZXingImageProvider::requestImage implementation to:
- fix bug when '?' is included without correct definition of options
 - utilize requestedSize for the generated barcode

Updated README.md file to reflect changes.
2018-03-11 19:21:19 +02:00
favoritas37
bec02cb83e Added new implementation of QrCode encoding.
It is backward compatible with the version that was active till now, though, it also enables an advanced operation for configuring options during encoding.
2018-02-11 20:43:48 +02:00
Grecko
11f1269ad6 Declarative encoding API from QML
To display an encoded qrcode from QML, we now can do Image { source:
"image://QZXing/qrcode/<data>" }

This allows different encoded images to be displayed simultaneously

Closes #31
2017-10-14 18:31:54 +02:00
Nikolaos Ftylitakis
f26570dc70 Merge branch 'master' of https://github.com/ftylitak/qzxing 2017-05-11 17:55:51 +03:00
Nikolaos Ftylitakis
710a6f6ab4 added Info.plist to allow iOS to use Camera feature 2017-05-11 17:32:23 +03:00
favoritas37
bf566aca2f Fixed compilation of QZXingDragNDropTest project, was missing the configuration flag qzxing_qml 2017-05-01 15:09:14 +03:00
favoritas37
30dcf6acfc Fixed compilation of BarcodeEncoder example. Make use of qzxing_qml CONFIG tag. 2017-04-07 17:16:15 +03:00
favoritas37
6a40ab118d Merge branch 'master' of https://github.com/ftylitak/qzxing 2017-03-20 17:24:53 +02:00
favoritas37
2207c3c248 Removed qzxing_qml tag from the defaults
Automatically add qzxing_qml if qzxing_multimedia tag is used
Refactorings to wrap QML dependant code in QZXING_QML scopes
update README.md to reflect the above changes
changes triggered from #26
2017-03-20 17:23:52 +02:00
favoritas37
51346e19d6 Fixed processing of RGB32 images. Fix inverted y directly at the construction of the image. Fixes issue #27. 2017-03-20 15:11:40 +02:00
favoritas37
f581e879de fixed compilation of QZXingLive for platforms other than Android 2017-03-16 16:26:48 +02:00
favoritas37
a69cd45ac6 added higher resolution icons in QZXingLive 2017-03-03 19:02:49 +02:00
favoritas37
29860c538c Added example with proper handling of Android application permissions for QZXingLive triggered by #22 2017-01-29 17:54:16 +02:00
favoritas37
88012f5aa2 Updated BarcodeEncoder project. Previous implementation caused compilation error when compiled with MSVC. Also this implementation is more compact 2017-01-23 19:45:47 +02:00
Nikolaos Ftylitakis
cbaef5e90f Delete gradle.properties
removed unnecessary file
2017-01-16 20:04:22 +02:00
favoritas37
c48d31f523 removed unecessary file 2017-01-16 20:02:13 +02:00
favoritas37
75eb47e8c5 fine tune the use of QZXing::registerQMLTypes to include the QZXingFilter. Update QZXingLive with the latest changes 2017-01-16 19:57:25 +02:00
favoritas37
905ee3359a make QZXingLive aware of the Android configuration 2017-01-16 19:54:20 +02:00
favoritas37
ac2d636532 Added initial Android files 2017-01-16 19:52:44 +02:00
favoritas37
a3e71ec1e7 created qzxing_qml and qzxing_multimedia qmake CONFIG tags for QZXing.pri to allow the control of dependencies based on the needs. qzxing_qml enables QML specific parts of the library. qzxing_multimedia enables QZXingFilter which requires Qt's multimedia. 2017-01-15 20:36:41 +02:00
Milian Wolff
594b178501 Make QZXingFilter "official" by moving it out of the example folder
The filter is much more performant than using the QZXing API in an
imparative way for the use-case of live-analyzing video frames in QML.
2017-01-10 13:24:55 +01:00
Milian Wolff
449a808972 Crop to capture rect directly when converting RGB to grayscale
This improves the performance since we only need to convert the
actually interesting part of the frame, instead of the full frame.
2017-01-10 13:17:54 +01:00
Milian Wolff
c882465649 Improve performance of rgb(a) reading, convert directly to greyscale
This again leads to a noticeable performance improvement of the
QZXingFilter example, as we get rid of one full copy of the image
data by converting directly into greyscale, instead of first
converting to RGB and then converting to greyscale.
2017-01-10 13:17:54 +01:00
Milian Wolff
b5e4f06e9f Fix linking on recent Qt for iOS
The qtmn hack is not required anymore.
2017-01-10 13:17:54 +01:00
Milian Wolff
0e10d8aeca Add simple FPS counter to QZXingLive example 2017-01-10 13:17:54 +01:00
Milian Wolff
69e05c1ff1 Add support for NV12 video frames
This was encountered on a recent Android device.
2017-01-10 13:17:54 +01:00
Milian Wolff
75b1a0d355 Further optimize QZXingFilterRunnable::processVideoFrameProbed
Do not call detaching QByteArray::data, use constData instead.
Also hoist some constants out of the inner conversion loops and make
more variables const.
2017-01-10 13:17:54 +01:00
Milian Wolff
3eb5b0b869 Cleanup debug code, save at most 100 images. 2017-01-10 13:17:54 +01:00
Milian Wolff
bc2badb5b5 Optimize: reduce memory allocations, convert directly to grayscale
This dramatically improves the performance of the QZXingFilter.
2017-01-10 13:17:54 +01:00
Milian Wolff
d112bf4186 Don't try harder by default in the QZXingLive example 2017-01-10 13:17:54 +01:00
Milian Wolff
7937cb84b5 Only try to mirror images when tryHarder is set to true
Additionally, this is only done until a match is found, instead of
always applying mirroring for the 2nd, 3rd and 4th frames.
2017-01-10 13:17:54 +01:00