diff options
Diffstat (limited to 'qrcode.cpp')
-rw-r--r-- | qrcode.cpp | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/qrcode.cpp b/qrcode.cpp deleted file mode 100644 index da747a5..0000000 --- a/qrcode.cpp +++ /dev/null @@ -1,37 +0,0 @@ -#include "qrcode.h" - -#include <fmt/format.h> - -#include <qrcodegen/QrCode.hpp> - -#include <Magick++.h> - -using namespace qrcodegen; -using namespace Magick; - -void QRCode::init() -{ - Magick::InitializeMagick(NULL); -} - -std::string QRCode::getQRCode(const std::string& data) -{ - QrCode qrc {QrCode::encodeText(data.c_str(), QrCode::Ecc::MEDIUM)}; - - int size {qrc.getSize()}; - - Image image(fmt::format("{0}x{0}", size).c_str(), "white"); - image.type(GrayscaleType); - - for (int x = 0; x < size; x++) { - for (int y = 0; y < size; y++) { - image.pixelColor(x, y, qrc.getModule(x, y) ? "black" : "white"); - } - } - - image.magick("PNG"); - - Blob blob; - image.write(&blob); - return std::string{(char*)blob.data(), blob.length()}; -} |