Skip to content

Commit

Permalink
功能完善
Browse files Browse the repository at this point in the history
增加二维码识别功能
细节改进
  • Loading branch information
188080501 committed Apr 12, 2017
1 parent 6863d8e commit fe3ce24
Show file tree
Hide file tree
Showing 249 changed files with 29,526 additions and 67 deletions.
10 changes: 5 additions & 5 deletions JQTools.pro
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@ QT += qml quick widgets concurrent
CONFIG += c++11
CONFIG += c++14

include($$PWD/lib/JQLibrary/JQLibrary.pri)
include($$PWD/lib/MaterialUI/MaterialUI.pri)
include($$PWD/lib/JQToolsLibrary/JQToolsLibrary.pri)
include($$PWD/lib/JQNetwork/JQNetwork.pri)
include($$PWD/components/components.pri)
include( $$PWD/lib/JQLibrary/JQLibrary.pri )
include( $$PWD/lib/MaterialUI/MaterialUI.pri )
include( $$PWD/lib/JQToolsLibrary/JQToolsLibrary.pri )
include( $$PWD/lib/JQNetwork/JQNetwork.pri )
include( $$PWD/components/components.pri )

INCLUDEPATH += \
$$PWD/cpp/
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ https://github.com/188080501/JQNetwork
工具类|PNG图片压缩|已完成
工具类|JPG图片压缩|Mac平台已完成
工具类|正则表达式测试器|等待开发
工具类|二维码识别器|等待开发
工具类|二维码识别器|已完成
工具类|屏幕拾色器|等待开发
工具类|局域网文件传输|已完成
工具类|局域网远程构建|等待开发
Expand Down
4 changes: 2 additions & 2 deletions components/CalculateGroup/CalculateGroup.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/HashCalculate/HashCalculate.pri)
include($$PWD/TimestampTransform/TimestampTransform.pri)
include( $$PWD/HashCalculate/HashCalculate.pri )
include( $$PWD/TimestampTransform/TimestampTransform.pri )

INCLUDEPATH += \
$$PWD/
Expand Down
6 changes: 3 additions & 3 deletions components/MakeGroup/MakeGroup.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/IconMaker/IconMaker.pri)
include($$PWD/FontToPng/FontToPng.pri)
include($$PWD/QRCodeMaker/QRCodeMaker.pri)
include( $$PWD/IconMaker/IconMaker.pri )
include( $$PWD/FontToPng/FontToPng.pri )
include( $$PWD/QRCodeMaker/QRCodeMaker.pri )

INCLUDEPATH += \
$$PWD/
Expand Down
2 changes: 1 addition & 1 deletion components/MakeGroup/QRCodeMaker/cpp/qrcodemaker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
GitHub: https://github.com/188080501/
*/

#include "QRCodeMaker.h"
#include "qrcodemaker.h"

// Qt lib import
#include <QDebug>
Expand Down
6 changes: 3 additions & 3 deletions components/QtGroup/QtGroup.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/PngWarningRemover/PngWarningRemover.pri)
include($$PWD/PropertyMaker/PropertyMaker.pri)
include($$PWD/CppFileMaker/CppFileMaker.pri)
include( $$PWD/PngWarningRemover/PngWarningRemover.pri )
include( $$PWD/PropertyMaker/PropertyMaker.pri )
include( $$PWD/CppFileMaker/CppFileMaker.pri )

INCLUDEPATH += \
$$PWD/
Expand Down
12 changes: 6 additions & 6 deletions components/TextGroup/TextGroup.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/Utf16Transform/Utf16Transform.pri)
include($$PWD/RgbStringTransform/RgbStringTransform.pri)
include($$PWD/UrlEncode/UrlEncode.pri)
include($$PWD/RandomPassword/RandomPassword.pri)
include($$PWD/CaseTransform/CaseTransform.pri)
include($$PWD/JsonFormat/JsonFormat.pri)
include( $$PWD/Utf16Transform/Utf16Transform.pri )
include( $$PWD/RgbStringTransform/RgbStringTransform.pri )
include( $$PWD/UrlEncode/UrlEncode.pri )
include( $$PWD/RandomPassword/RandomPassword.pri )
include( $$PWD/CaseTransform/CaseTransform.pri )
include( $$PWD/JsonFormat/JsonFormat.pri )

INCLUDEPATH += \
$$PWD/
Expand Down
24 changes: 24 additions & 0 deletions components/ToolsGroup/QRCodeReader/QRCodeReader.pri
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
#
# This file is part of JQTools
#
# Project introduce: https://github.com/188080501/JQTools
#
# Copyright: Jason
#
# Contact email: [email protected]
#
# GitHub: https://github.com/188080501/
#

INCLUDEPATH += \
$$PWD/cpp/

HEADERS += \
$$PWD/cpp/qrcodereader.h

SOURCES += \
$$PWD/cpp/qrcodereader_.cpp

RESOURCES += \
$$PWD/qml/QRCodeReaderQml.qrc \
$$PWD/resources/images/QRCodeReaderImages.qrc
13 changes: 13 additions & 0 deletions components/ToolsGroup/QRCodeReader/cpp/QRCodeReader
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
/*
This file is part of JQTools

Project introduce: https://github.com/188080501/JQTools

Copyright: Jason

Contact email: [email protected]

GitHub: https://github.com/188080501/
*/

#include "qrcodereader.h"
54 changes: 54 additions & 0 deletions components/ToolsGroup/QRCodeReader/cpp/qrcodereader.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
/*
This file is part of JQTools
Project introduce: https://github.com/188080501/JQTools
Copyright: Jason
Contact email: [email protected]
GitHub: https://github.com/188080501/
*/

#ifndef __GROUP_MAKEGROUP_QRCODEREADER_CPP_QRCODEREADER_H__
#define __GROUP_MAKEGROUP_QRCODEREADER_CPP_QRCODEREADER_H__

// Qt lib import
#include <QImage>
#include <QQuickImageProvider>

// JQToolsLibrary import
#include "JQToolsLibrary.h"

#define QRCODEREADER_INITIALIZA \
{ \
qmlRegisterType< QRCodeReader_::Manage >( "QRCodeReader", 1, 0, "QRCodeReaderManage" ); \
}

class JQQRCodeReader;

namespace QRCodeReader_
{

class Manage: public AbstractTool
{
Q_OBJECT
Q_DISABLE_COPY(Manage)

public:
Manage();

~Manage() = default;

public slots:
QUrl chooseImage() const;

QString decodeImage(const QUrl &imageUrl);

private:
QSharedPointer< JQQRCodeReader > jqQRCodeReader_;
};

}

#endif//__GROUP_MAKEGROUP_QRCODEREADER_CPP_QRCODEREADER_H__
54 changes: 54 additions & 0 deletions components/ToolsGroup/QRCodeReader/cpp/qrcodereader_.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
/*
This file is part of JQTools
Project introduce: https://github.com/188080501/JQTools
Copyright: Jason
Contact email: [email protected]
GitHub: https://github.com/188080501/
*/

#include "qrcodereader.h"

// Qt lib import
#include <QDebug>
#include <QFileDialog>
#include <QStandardPaths>
#include <QUrl>

// JQLibrary lib import
#include "JQQRCodeReader.h"

using namespace QRCodeReader_;

Manage::Manage():
jqQRCodeReader_( new JQQRCodeReader )
{ }

QUrl Manage::chooseImage() const
{
return QUrl::fromLocalFile(
QFileDialog::getOpenFileName(
nullptr,
QStringLiteral( "\u8BF7\u9009\u62E9\u56FE\u7247" ),
QStandardPaths::writableLocation( QStandardPaths::DesktopLocation ),
"*.png *.jpg"
)
);
}

QString Manage::decodeImage(const QUrl &imageUrl)
{
if ( imageUrl.toString().startsWith( "file:" ) )
{
return jqQRCodeReader_->decodeImage( QImage( imageUrl.toLocalFile() ) );
}
else if ( imageUrl.toString().startsWith( "qrc:" ) )
{
return jqQRCodeReader_->decodeImage( QImage( imageUrl.toString().mid( 3 ) ) );
}

return { };
}
76 changes: 76 additions & 0 deletions components/ToolsGroup/QRCodeReader/qml/QRCodeReader.qml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
/*
This file is part of JQTools
Project introduce: https://github.com/188080501/JQTools
Copyright: Jason
Contact email: [email protected]
GitHub: https://github.com/188080501/
*/

import QtQuick 2.7
import QtQuick.Controls 1.4
import "qrc:/MaterialUI/Interface/"
import QRCodeReader 1.0

Item {
id: qrCodeReader
width: 620
height: 540

QRCodeReaderManage {
id: qrCodeReaderManage
}

Item {
anchors.centerIn: parent
width: 620
height: 540

MaterialTextField {
id: textFieldForTag
x: 40
y: 50
width: 540
placeholderText: "被识别的标记"

Component.onCompleted: {
text = qrCodeReaderManage.decodeImage( "qrc:/QRCodeReaderImages/test.png" );
}
}

Image {
id: imageForQRCode
anchors.horizontalCenter: parent.horizontalCenter
anchors.horizontalCenterOffset: -100
anchors.verticalCenter: parent.verticalCenter
anchors.verticalCenterOffset: 50
width: 250
height: 250
source: "qrc:/QRCodeReaderImages/test.png"

MaterialButton {
anchors.left: parent.right
anchors.leftMargin: 50
anchors.verticalCenter: parent.verticalCenter
text: "选取图片"

onClicked: {
imageForQRCode.source = qrCodeReaderManage.chooseImage();

if ( imageForQRCode.source.toString() !== "" )
{
textFieldForTag.text = qrCodeReaderManage.decodeImage( imageForQRCode.source );
}
else
{
textFieldForTag.text = "";
materialUI.showSnackbarMessage( "用户取消操作" );
}
}
}
}
}
}
5 changes: 5 additions & 0 deletions components/ToolsGroup/QRCodeReader/qml/QRCodeReaderQml.qrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<RCC>
<qresource prefix="/QRCodeReader">
<file>QRCodeReader.qml</file>
</qresource>
</RCC>
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<RCC>
<qresource prefix="/QRCodeReaderImages">
<file>test.png</file>
</qresource>
</RCC>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 5 additions & 4 deletions components/ToolsGroup/ToolsGroup.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,13 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/LinesStatistics/LinesStatistics.pri)
include($$PWD/LanFileTransport/LanFileTransport.pri)
include($$PWD/PngOptimize/PngOptimize.pri)
include( $$PWD/LinesStatistics/LinesStatistics.pri )
include( $$PWD/LanFileTransport/LanFileTransport.pri )
include( $$PWD/PngOptimize/PngOptimize.pri )
mac {
include($$PWD/JpgOptimize/JpgOptimize.pri)
include( $$PWD/JpgOptimize/JpgOptimize.pri )
}
include( $$PWD/QRCodeReader/QRCodeReader.pri )

INCLUDEPATH += \
$$PWD/
Expand Down
7 changes: 5 additions & 2 deletions components/ToolsGroup/toolsgroup.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,18 +20,21 @@
# include <JpgOptimize>
#endif
#include <LanFileTransport>
#include <QRCodeReader>

#ifdef TOOLSGROUP_JPGOPTIMIZE_ENABLE
# define TOOLSGROUP_INITIALIZA \
LINESSTATISTICS_INITIALIZA; \
PNGOPTIMIZE_INITIALIZA; \
JPGOPTIMIZE_INITIALIZA; \
LANFILETRANSPORT_INITIALIZA;
LANFILETRANSPORT_INITIALIZA; \
QRCODEREADER_INITIALIZA;
#else
# define TOOLSGROUP_INITIALIZA \
LINESSTATISTICS_INITIALIZA; \
PNGOPTIMIZE_INITIALIZA; \
LANFILETRANSPORT_INITIALIZA;
LANFILETRANSPORT_INITIALIZA; \
QRCODEREADER_INITIALIZA;
#endif

#endif//__TOOLSGROUP_TOOLSGROUP_H__
12 changes: 6 additions & 6 deletions components/components.pri
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
# GitHub: https://github.com/188080501/
#

include($$PWD/WelcomeGroup/WelcomeGroup.pri)
include($$PWD/TextGroup/TextGroup.pri)
include($$PWD/CalculateGroup/CalculateGroup.pri)
include($$PWD/MakeGroup/MakeGroup.pri)
include($$PWD/ToolsGroup/ToolsGroup.pri)
include($$PWD/QtGroup/QtGroup.pri)
include( $$PWD/WelcomeGroup/WelcomeGroup.pri )
include( $$PWD/TextGroup/TextGroup.pri )
include( $$PWD/CalculateGroup/CalculateGroup.pri )
include( $$PWD/MakeGroup/MakeGroup.pri )
include( $$PWD/ToolsGroup/ToolsGroup.pri )
include( $$PWD/QtGroup/QtGroup.pri )
Loading

0 comments on commit fe3ce24

Please sign in to comment.