summaryrefslogtreecommitdiff
path: root/genqrcode/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'genqrcode/README.md')
-rw-r--r--genqrcode/README.md235
1 files changed, 235 insertions, 0 deletions
diff --git a/genqrcode/README.md b/genqrcode/README.md
new file mode 100644
index 0000000000..34f557aa9f
--- /dev/null
+++ b/genqrcode/README.md
@@ -0,0 +1,235 @@
+# libqrencode - a fast and compact QR Code encoding library
+[![build](https://github.com/fukuchi/libqrencode/workflows/build/badge.svg)](https://github.com/fukuchi/libqrencode/actions)
+
+**Attention:** This repository contains the development version of libqrencode. See <https://fukuchi.org/works/qrencode/> for the official stable releases. At this moment, the latest stable release is version 4.1.1.
+
+GENERAL INFORMATION
+===================
+Libqrencode is a fast and compact library for encoding data in a QR Code,
+a 2D symbology that can be scanned by handy terminals such as a smartphone.
+The capacity of QR Code is up to 7000 digits or 4000 characters and has high
+robustness.
+
+Libqrencode accepts a string or a list of data chunks then encodes in a QR Code
+symbol as a bitmap array. While other QR Code applications generate an image
+file, using libqrencode allows applications to render QR Code symbols from raw
+bitmap data directly. This library also contains a command-line utility outputs
+QR Code images in various formats.
+
+
+SPECIFICATION
+=============
+Libqrencode supports QR Code model 2, described in JIS (Japanese Industrial
+Standards) X0510:2004 or ISO/IEC 18004. Most of features in the specification
+are implemented such as:
+
+- Numeric, alphabet, Japanese kanji (Shift-JIS) or any 8 bit code can be
+ embedded
+- Optimized encoding of a string
+- Structured-append of symbols
+- Micro QR Code (experimental)
+
+Currently the following features are not supported:
+
+- ECI and FNC1 mode
+- QR Code model 1 (deprecated)
+
+
+INSTALL
+=======
+
+Requirements
+------------
+While the command-line utility and some test programs use libpng or SDL 2.0,
+the libqrencode library itself has no dependencies. You can skip compiling
+tests and/or tools if you want not to install programs using SDL or PNG.
+
+Compile & install
+-----------------
+If there is no "configure" script in the source code directory, run
+"autogen.sh" at first to generate it - this is mandatory if you downloaded the
+source from GitHub. Some additional software is needed to complete this
+process. For example, in Ubuntu, the following packages are needed:
+
+- autoconf
+- automake
+- autotools-dev
+- libtool
+- pkg-config
+- libpng-dev
+
+You can skip this process if you have "configure" script already (typically
+when you downloaded the source tarball from fukuchi.org.)
+
+Now you are ready to compile the library and tool. Type the following commands:
+
+```
+./configure
+make
+sudo make install
+sudo ldconfig
+```
+
+This compiles and installs the library and header file to the appropriate
+directories: by default, /usr/local/lib and /usr/local/include. You can change
+the destination directory by passing some options to the configure script.
+Run "./configure --help" to see the list of options.
+
+It also installs a command line tool "qrencode" to /usr/local/bin. If you want
+not to build it, give "--without-tools" option to the configure script.
+
+If the configure script does not work well, try to use CMake.
+
+```
+cmake .
+make
+```
+
+When you want to build the test programs, give "--with-tests" option to
+configure, or "-DWITH\_TESTS=YES" to cmake.
+
+### Building libqrencode with vcpkg
+
+You can download and install libqrencode using the
+[vcpkg](https://github.com/Microsoft/vcpkg) dependency manager:
+
+```
+git clone https://github.com/Microsoft/vcpkg.git
+cd vcpkg
+./bootstrap-vcpkg.sh
+./vcpkg integrate install
+./vcpkg install libqrencode
+```
+
+The libqrencode port in vcpkg is kept up to date by Microsoft team members and
+community contributors. If the version is out of date, please
+[create an issue or pull request](https://github.com/Microsoft/vcpkg) on the
+vcpkg repository.
+
+
+USAGE
+=====
+Basic usages of this library are written in the header file (qrencode.h).
+You can generate a manual of the library by using Doxygen, or see
+
+https://fukuchi.org/works/qrencode/manual/index.html
+
+
+WARNINGS
+========
+The library is distributed WITHOUT ANY WARRANTY.
+
+Micro QR Code support is EXPERIMENTAL.
+
+Be careful to use the command line tool (qrencode) if it is used by a web
+application (e.g. CGI script). For example, giving "-s" option with a large
+number to qrencode may cause DoS. The parameters should be checked by the
+application.
+
+
+LICENSING INFORMATION
+=====================
+Copyright (C) 2006-2018, 2020 Kentaro Fukuchi
+
+This library is free software; you can redistribute it and/or modify it under
+the terms of the GNU Lesser General Public License as published by the Free
+Software Foundation; either version 2.1 of the License, or any later version.
+
+This library is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
+
+You should have received a copy of the GNU Lesser General Public License along
+with this library; if not, write to the Free Software Foundation, Inc., 51
+Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+
+CONTACT
+=======
+Visit the homepage at:
+
+https://fukuchi.org/works/qrencode/
+
+for new releases. The git repository is available at:
+
+https://github.com/fukuchi/libqrencode
+
+Please mail any bug reports, suggestions, comments, and questions to:
+
+Kentaro Fukuchi <kentaro@fukuchi.org>
+
+or submit issues to:
+
+https://github.com/fukuchi/libqrencode/issues
+
+
+ACKNOWLEDGMENTS
+===============
+QR Code is registered trademarks of DENSO WAVE INCORPORATED in JAPAN and other
+countries.
+
+Reed-Solomon encoder included in this library is originally taken from FEC
+library developed by Phil Karn (KA9Q) and distributed under the terms of the
+GNU LGPL, then rewritten by Kentaro Fukuchi.
+Copyright (C) 2002, 2003, 2004, 2006 Phil Karn, KA9Q
+
+* NANKI Haruo - improved lower-case characters encoding
+* Katsumi Saito - SPEC file
+* Philippe Delcroix - improved mask evaluation
+* Yusuke Mihara - structured-append support
+* David Dahl - DPI and SVG support patch
+* Adam Shepherd - bug fix patch of the mask evaluation
+* Josef Eisl (@zapster) - EPS support patch
+* Colin (@moshen) - ANSI support patch
+* Ralf Ertzinger - ASCII support patch
+* Yutaka Niibe (@gniibe)- various bug fix patches
+* Dan Storm (@Repox) - SVG support patch
+* Lennart Poettering (@mezcalero)
+ - improved text art patch
+* Yann Droneaud - improved input validation patch
+* Viona - bug fix patch for string splitting
+* Daniel Dörrhöfer (@d4ndo)
+ - RLE option, some bug fixes, Travis configuration
+* Greg Hart - PNG32 support patch
+* @siggi-heltau - bug fix patch
+* Tobias Klauser (@tklauser)
+ - bug fix patch, XPM support patch
+* Robert Petersen (@ripetersen)
+ - added ability to read input data from a file
+* @Oblomov - improved SVG support patch
+* Michał Górny (@mgorny)
+ - reverse mappings of UTF8 and ANSIUTF8, build script
+ fixes
+* @EckoEdc - MinGW support patch
+* Sebastian Buchwald (@UniQP)
+ - Various code cleanups
+* André Klitzing (@misery)
+ - CMake support
+* Alexey Nikolaev (@aleksey-nikolaev)
+ - improved CMake support
+* Vilppu Vuorinen (@vilppuvuorinen)
+ - improved CMake support
+* @vanillahsu - bug fix patch
+* @Ation - bug fix patch
+* Jonathan Bennett - Added "--inline" option to qrencode
+* András Veres-Szentkirályi
+ - ANSI256UTF8 support
+* @sdf5 - improved CMake support
+* Lonnie Abelbeck (@abelbeck)
+ - bug fix patch
+* @4061N - performance improvement patch
+* Rosen Penev (@neheb) - CMake bug fix patch
+* Mika Lindqvist (@mtl1979)
+ - replacement for gettimeofday() for Windows.
+* Darsey Litzenberger (@dlitz) and Edward E. (@cbrt64)
+ - fixed invalid XPM output
+* Shigeyuki Hirai, Paul Janssens, wangsai, Gavan Fantom, Matthew Baker,
+ Rob Ryan, Fred Steinhaeuser, Terry Burton, @chisj, @vlad417, Petr,
+ Hassan Hajji, Emmanuel Blot, ßlúèÇhîp, Heiko Becker, Gavin Andresen,
+ David Binderman, @ralgozino, Sean McMurray, Vlad Bespalov (@win32asm),
+ Antenore Gatta, Yoshimichi Inoue, Sunil Maganally, Norman Gray,
+ Danomi Manchego, @minus7, Ian Sweet, @qianchenglenger, Ronald Michaels,
+ Yuji Ueno, Jakub Wilk, @KangLin, @c-273, @thebunnyrules, @NancyLi1013,
+ Frédéric Wang, Dan Jacobson, Jan Tojnar, @xiaoyur347, @charmander,
+ Yannick Schinko, @a6q
+ - bug report / suggestion / typo fixes