diff --git a/.gitignore b/.gitignore index 4c6e389..c65dee8 100644 --- a/.gitignore +++ b/.gitignore @@ -92,5 +92,6 @@ ENV/ # Rope project settings .ropeproject -setup.py -MANIFEST \ No newline at end of file +MANIFEST + +.idea diff --git a/README-cn.md b/README-cn.md index 4794470..2a7cced 100644 --- a/README-cn.md +++ b/README-cn.md @@ -1,15 +1,7 @@ -# QR-Code -[*back to English*](https://github.com/sylnsfar/qrcode/blob/master/README.md) +# Amazing-QR -* **更新 (160906)**: 新增 **exe** 版本 - [myqr.exe in qrcode_win](https://github.com/sylnsfar/qrcode_win) +[*back to English*](https://github.com/hwxhw/amzqr/blob/master/README.md) -* **更新 (160908)**: 新增**网页**版本 - [amazing-qrcode](http://www.amazing-qrcode.com/) *(made by [Maras0830](https://github.com/Maras0830))* - -* **更新 (160910)**: 发布到 **PyPI** - [**MyQR**](https://pypi.python.org/pypi/MyQR) ! - - * 160911: 更新为可导入的模块 - - ​ ## 概述 @@ -17,98 +9,66 @@ 可生成*普通二维码*、*带图片的艺术二维码(黑白与彩色)*、*动态二维码(黑白与彩色)*。 -​ - -​ - ## Contents 目录 -* [概述](#概述) -* [目录](#目录) -* [示例](#示例) -* [安装](#安装) -* [使用方法](#使用方法) - * [命令行方式](#命令行方式) - * [作为导入文件](#作为导入文件) -* [使用提示](#使用提示) -* [可用字符](#可用字符) -* [依赖库](#依赖库) -* [运行环境](#运行环境) -* [协议](#协议) - - -​ +[toc] ## 示例 -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs0.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs0.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs1.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs1.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs2.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs2.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/c_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode.gif) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/c_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode.gif) -![](https://github.com/sylnsfar/qrcode/blob/master/example/zootopia_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode0.gif) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/zootopia_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode0.gif) - - - ## 安装 ```python -# 通过 pip -pip(3) install myqr(or MyQR) +pip install amzqr ``` -​ - - - ## 使用方法 ### 命令行方式 -*(**提示**:如果你尚未安装 [**MyQR**](https://pypi.python.org/pypi/MyQR) ,以下内容请使用`python(3) myqr.py` 而非`myqr` 。)* +*(**提示**:如果你尚未安装 [**amzqr**](https://pypi.python.org/pypi/amzqr) ,以下内容请使用`python(3) amzqr.py` 而非`amzqr` 。)* ```python # 概括 -myqr Words - [-v {1,2,3,...,40}] - [-l {L,M,Q,H}] - [-n output-filename] - [-d output-directory] - [-p picture_file] - [-c] - [-con contrast] - [-bri brightness] +amzqr Words + [-v {1,2,3,...,40}] + [-l {L,M,Q,H}] + [-n output-filename] + [-d output-directory] + [-p picture_file] + [-c] + [-con contrast] + [-bri brightness] ``` - [普通二维码](#普通二维码) 介绍了 `Words`, `-v`, `-l`, `-n`, `-d` - [艺术二维码](#艺术二维码) 介绍了 `-p`, `-c`, `-con`, `-bri` - [动态GIF二维码](#动态gif二维码) 介绍了动态的生成方法和注意点 - - - - #### 普通二维码 -![](https://github.com/sylnsfar/qrcode/blob/master/example/0.png) +![](https://github.com/hwxhw/amzqr/blob/master/example/0.png) ```markdown #1 Words -myqr https://github.com +amzqr https://github.com ``` * 在命令后输入链接或者句子作为参数,然后在程序的当前目录中产生相应的二维码图片文件,默认命名为” qrcode.png“。 - ​ - ```markdown #2 -v, -l -myqr https://github.com -v 10 -l Q +amzqr https://github.com -v 10 -l Q ``` * **默认边长**是取决于你输入的信息的长度和使用的纠错等级; @@ -121,12 +81,9 @@ myqr https://github.com -v 10 -l Q `-l` 控制纠错水平,范围是**L、M、Q、H**,从左到右依次升高。 - - - ```markdown #3 -n, -d -myqr https://github.com -n github_qr.jpg -d .../paths/ +amzqr https://github.com -n github_qr.jpg -d .../paths/ ``` - **默认输出文件名**是“ qrcode.png ",而**默认存储位置**是当前目录。 @@ -137,68 +94,46 @@ myqr https://github.com -n github_qr.jpg -d .../paths/ `-d` 控制位置。 - ​ - - - - - - -#### 艺术二维码 - -![](https://github.com/sylnsfar/qrcode/blob/master/example/1.png)![](https://github.com/sylnsfar/qrcode/blob/master/example/2.png) + ​#### 艺术二维码 +![](https://github.com/hwxhw/amazing-qr/blob/master/example/1.png)![](https://github.com/hwxhw/amazing-qr/blob/master/example/2.png) ```markdown #1 -p -myqr https://github.com -p github.jpg +amzqr https://github.com -p github.jpg ``` * 参数`-p` 用来将QR二维码图像与一张同目录下的图片相结合,产生一张**黑白**图片。 - ​ - - - - ```markdown #2 -c -myqr https://github.com -p github.jpg -c +amzqr https://github.com -p github.jpg -c ``` * 加上参数 `-c` 可以使产生的图片由黑白变为**彩色**的。 - ​ - - - ```markdown #3 -con, -bri -myqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6 +amzqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6 ``` * 参数`-con` 用以调节图片的**对比度**,1.0 表示原始图片,更小的值表示更低对比度,更大反之。**默认为1.0**。 * 参数 `-bri` 用来调节图片的**亮度**,其余用法和取值与 `-con` 相同。 - - - #### 动态GIF二维码 -![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode0.gif) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode0.gif) 动态二维码与上述的带图片的二维码的生成方法没什么区别,你只要采用 `.gif` 格式的图片即可生成黑白或者彩色的动态二维码。但**注意**如果使用了 `-n` 参数自定义输出的文件名,切记其格式也必须是 `.gif` 格式。 - - ### 作为导入文件 ```python # 安装模块后 -from MyQR import myqr -version, level, qr_name = myqr.run( - words, +from amzqr import amzqr +version, level, qr_name = amzqr.run( + words, version=1, level='H', picture=None, @@ -207,16 +142,13 @@ version, level, qr_name = myqr.run( brightness=1.0, save_name=None, save_dir=os.getcwd() - ) +) ``` - - *以下各个参数已经在[上文](#命令行方式)有所介绍* - ```python -# help(myqr) +# help(amzqr) Positional parameter words: str @@ -230,23 +162,15 @@ Optional parameters save_name: str, the output filename like 'example.png' save_dir: str, the output directory ``` - - - - - ## 使用提示 * 请采用**正方形**或近似正方形的图片 * 建议在图片尺寸大的时候使用 `-v` 的值也应该**适当**变大。 -* 如果图片有透明无色部分,最终效果是:![](https://github.com/sylnsfar/qrcode/blob/master/example/aa.png) - - 你可以将透明部分修改成白色,最终效果会变成![](https://github.com/sylnsfar/qrcode/blob/master/example/a0.png) - - +* 如果图片有透明无色部分,最终效果是:![](https://github.com/hwxhw/amazing-qr/blob/master/example/aa.png) + 你可以将透明部分修改成白色,最终效果会变成![](https://github.com/hwxhw/amazing-qr/blob/master/example/a0.png) ## 可用字符 @@ -260,32 +184,10 @@ Optional parameters · , . : ; + - * / \ ~ ! @ # $ % ^ & ` ' = < > [ ] ( ) ? _ { } | and (space) ``` +## 环境 -​ +- Python 3 -## 依赖库 +## 协议 -* [pillow](https://pypi.python.org/pypi/Pillow/3.3.1) -* [numpy](https://pypi.python.org/pypi/numpy) -* [imageio](https://pypi.python.org/pypi/imageio) - - - - -*(**提示**:如果没有安装 [**MyQR**](https://pypi.python.org/pypi/MyQR) ,使用命令`pip install -r requirements.txt` 来安装所有依赖的库。)* - - - -## 运行环境 - -* Linux, Python 3 -* Windows, Python 3 -* Mac, Python 3 - - -​ - - -## 协议 - -* GPLv3 \ No newline at end of file +* GPLv3 diff --git a/README.md b/README.md index 505d6e8..a906268 100644 --- a/README.md +++ b/README.md @@ -1,113 +1,74 @@ -# QR-Code -[*转到中文版*](https://github.com/sylnsfar/qrcode/blob/master/README-cn.md) +# Amazing-QR -* **update (160906)**: added an **exe** version - [myqr.exe in qrcode_win](https://github.com/sylnsfar/qrcode_win) - -* **update (160908)**: added a **web** version - [amazing-qrcode](http://www.amazing-qrcode.com/) *(made by [Maras0830](https://github.com/Maras0830))* - -* **update (160910)**: distributed to **PyPI** - [**MyQR**](https://pypi.python.org/pypi/MyQR) ! - - * 160911: updated to be importable - - ​ +[*转到中文版*](https://github.com/hwxhw/amzqr/blob/master/README-cn.md) ## Overview - **Python QR Code Generator** Generate *common qr-code*, *artistic qr-code (black & white or colorized)*, *animated qr-code (black & white or colorized)*. -​ - ## Contents -* [Overview](#overview) -* [Contents](#contents) -* [Examples](#examples) -* [Install](#install) -* [Usage](#usage) - * [Terminal Way](#terminal-way) - * [Import Way](#import-way) -* [Tips](#tips) -* [Supported Characters](#supported-characters) -* [Dependencies](#dependencies) -* [Environment](#environment) -* [License](#license) - - -​ +[toc] ## Examples -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs0.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs0.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs1.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs1.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/qrs2.jpg) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/qrs2.jpg) -![](https://github.com/sylnsfar/qrcode/blob/master/example/c_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode.gif) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/c_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode.gif) -![](https://github.com/sylnsfar/qrcode/blob/master/example/zootopia_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode0.gif) - - - - +![](https://github.com/hwxhw/amazing-qr/blob/master/example/zootopia_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode0.gif) ## Install ```python # via pip -pip(3) install myqr(or MyQR) +pip install amzqr ``` -​ - - - ## Usage ### Terminal Way -*(**TIPS**: If you haven't install [**MyQR**](https://pypi.python.org/pypi/MyQR), you should `python(3) myqr.py` instead of `myqr` blow.)* +*(**TIPS**: If you haven't install [**amzqr**](https://pypi.python.org/pypi/amzqr), you should `python(3) amzqr.py` instead of `amzqr` blow.)* -```python +```sh # summary -myqr Words - [-v {1,2,3,...,40}] - [-l {L,M,Q,H}] - [-n output-filename] - [-d output-directory] - [-p picture_file] - [-c] - [-con contrast] - [-bri brightness] +amzqr Words + [-v {1,2,3,...,40}] + [-l {L,M,Q,H}] + [-n output-filename] + [-d output-directory] + [-p picture_file] + [-c] + [-con contrast] + [-bri brightness] ``` - see [Common QR-Code](#common-qr-code) for `Words`, `-v`, `-l`, `-n`, `-d` - see [Artistic QR-Code](#artistic-qr-code) for `-p`, `-c`, `-con`, `-bri` - see [Animated GIF QR-Code](#animated-gif-qr-code) about GIF - -​ - - #### Common QR-Code -![](https://github.com/sylnsfar/qrcode/blob/master/example/0.png) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/0.png) ```markdown #1 Words -myqr https://github.com +amzqr https://github.com ``` * Just input a URL or a sentence, then get your QR-Code named 'qrcode.png' in the current directory. - ​ ```markdown #2 -v, -l -myqr https://github.com -v 10 -l Q +amzqr https://github.com -v 10 -l Q ``` * The **default** size of QR-Code depends both on the numbers of words you input and the level, while the **default** level (Error Correction Level) is **H** (the highest). @@ -123,7 +84,7 @@ myqr https://github.com -v 10 -l Q ```markdown #3 -n, -d -myqr https://github.com -n github_qr.jpg -d .../paths/ +amzqr https://github.com -n github_qr.jpg -d .../paths/ ``` * The **default** output-filename is 'qrcode.png', while the **default** output-directory is current directory. @@ -135,40 +96,31 @@ myqr https://github.com -n github_qr.jpg -d .../paths/ `-d` means directory. - - - - #### Artistic QR-Code -![](https://github.com/sylnsfar/qrcode/blob/master/example/1.png)![](https://github.com/sylnsfar/qrcode/blob/master/example/2.png) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/1.png)![](https://github.com/hwxhw/amazing-qr/blob/master/example/2.png) ```markdown #1 -p -myqr https://github.com -p github.jpg +amzqr https://github.com -p github.jpg ``` * The `-p` is to combine the QR-Code with the following picture which is in the same directory as the program. The resulting picture is **black and white** by default. - - - ```markdown #2 -c -myqr https://github.com -p github.jpg -c +amzqr https://github.com -p github.jpg -c ``` * The `-c` is to make the resulting picture **colorized**. - ​ - ```markdown #3 -con, -bri -myqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6 +amzqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6 ``` * The `-con` flag changes the **contrast** of the picture - a low number corresponds to low contrast and a high number to high contrast. **Default: 1.0**. @@ -181,19 +133,17 @@ myqr https://github.com -p github.jpg [-c] -con 1.5 -bri 1.6 #### Animated GIF QR-Code -![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode.gif)![](https://github.com/sylnsfar/qrcode/blob/master/example/daftpunktocat-guy_qrcode0.gif) +![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode.gif)![](https://github.com/hwxhw/amazing-qr/blob/master/example/daftpunktocat-guy_qrcode0.gif) The only difference from Artistic QR-Code mentioned above is that you should input an image file in the `.gif` format. The you can get your black-and-white or colorful qr-code. Remember that when you use `-n` to customize the output-filename, then the output-filename must end by `.gif`. - - ### Import Way ```python -# after installation -from MyQR import myqr -version, level, qr_name = myqr.run( - words, +from amzqr import amzqr + +version, level, qr_name = amzqr.run( + words, version=1, level='H', picture=None, @@ -202,7 +152,7 @@ version, level, qr_name = myqr.run( brightness=1.0, save_name=None, save_dir=os.getcwd() - ) +) ``` @@ -210,7 +160,7 @@ version, level, qr_name = myqr.run( ```python -# help(myqr) +# help(amzqr) Positional parameter words: str @@ -225,26 +175,15 @@ Optional parameters save_dir: str, the output directory ``` - - - - - - - ## Tips * Use a nearly **square** picture instead of a rectangle one. * If the size of the picture is large, you should also choose a **rightly** large `-v` instead of using the default one. -* If part of the picture is transparent, the qr code will look like: ![](https://github.com/sylnsfar/qrcode/blob/master/example/aa.png) - - You can change the transparent layer to white, and then it will look like: ![](https://github.com/sylnsfar/qrcode/blob/master/example/a0.png) - - - +* If part of the picture is transparent, the qr code will look like: ![](https://github.com/hwxhw/amazing-qr/blob/master/example/aa.png) + You can change the transparent layer to white, and then it will look like: ![](https://github.com/hwxhw/amazing-qr/blob/master/example/a0.png) ## Supported Characters @@ -258,32 +197,10 @@ Optional parameters · , . : ; + - * / \ ~ ! @ # $ % ^ & ` ' = < > [ ] ( ) ? _ { } | and (space) ``` - - - -## Dependencies - -* [pillow](https://pypi.python.org/pypi/Pillow/3.3.1) -* [numpy](https://pypi.python.org/pypi/numpy) -* [imageio](https://pypi.python.org/pypi/imageio) - - - - -*(**TIPS**: Without a installed [**MyQR**](https://pypi.python.org/pypi/MyQR), you should use `pip install -r requirements.txt` to ensure you have all dependencies.)* - - - ## Environment -* Linux, Python 3 -* Windows, Python 3 -* Mac, Python 3 +- Python 3 +## License -​ - - -## License - -* GPLv3 \ No newline at end of file +* GPLv3 diff --git a/amzqr.py b/amzqr.py new file mode 100644 index 0000000..1b0ca36 --- /dev/null +++ b/amzqr.py @@ -0,0 +1,7 @@ +# -*- coding: utf-8 -*- + +# To be used just when amzqr is not installed + +from amzqr.terminal import main + +main() diff --git a/MyQR/__init__.py b/amzqr/__init__.py old mode 100644 new mode 100755 similarity index 100% rename from MyQR/__init__.py rename to amzqr/__init__.py diff --git a/MyQR/myqr.py b/amzqr/amzqr.py old mode 100644 new mode 100755 similarity index 97% rename from MyQR/myqr.py rename to amzqr/amzqr.py index 458bb4e..35a506e --- a/MyQR/myqr.py +++ b/amzqr/amzqr.py @@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- import os -from MyQR.mylibs import theqrmodule +from amzqr.mylibs import theqrmodule from PIL import Image # Positional parameters @@ -18,7 +18,7 @@ from PIL import Image # save_name: str, the output filename like 'example.png' # save_dir: str, the output directory # -# See [https://github.com/sylnsfar/qrcode] for more details! +# See [https://github.com/hwxhw/amazing-qr] for more details! def run(words, version=1, level='H', picture=None, colorized=False, contrast=1.0, brightness=1.0, save_name=None, save_dir=os.getcwd()): supported_chars = r"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ··,.:;+-*/\~!@#$%^&`'=<>[]()?_{}|" @@ -49,7 +49,7 @@ def run(words, version=1, level='H', picture=None, colorized=False, contrast=1.0 def combine(ver, qr_name, bg_name, colorized, contrast, brightness, save_dir, save_name=None): - from MyQR.mylibs.constant import alig_location + from amzqr.mylibs.constant import alig_location from PIL import ImageEnhance, ImageFilter qr = Image.open(qr_name) diff --git a/MyQR/mylibs/ECC.py b/amzqr/mylibs/ECC.py old mode 100644 new mode 100755 similarity index 92% rename from MyQR/mylibs/ECC.py rename to amzqr/mylibs/ECC.py index 5bd6e83..b1861a4 --- a/MyQR/mylibs/ECC.py +++ b/amzqr/mylibs/ECC.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from MyQR.mylibs.constant import GP_list, ecc_num_per_block, lindex, po2, log +from amzqr.mylibs.constant import GP_list, ecc_num_per_block, lindex, po2, log #ecc: Error Correction Codewords def encode(ver, ecl, data_codewords): diff --git a/MyQR/mylibs/__init__.py b/amzqr/mylibs/__init__.py old mode 100644 new mode 100755 similarity index 100% rename from MyQR/mylibs/__init__.py rename to amzqr/mylibs/__init__.py diff --git a/MyQR/mylibs/constant.py b/amzqr/mylibs/constant.py old mode 100644 new mode 100755 similarity index 100% rename from MyQR/mylibs/constant.py rename to amzqr/mylibs/constant.py diff --git a/MyQR/mylibs/data.py b/amzqr/mylibs/data.py old mode 100644 new mode 100755 similarity index 96% rename from MyQR/mylibs/data.py rename to amzqr/mylibs/data.py index e03faba..f2c711a --- a/MyQR/mylibs/data.py +++ b/amzqr/mylibs/data.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from MyQR.mylibs.constant import char_cap, required_bytes, mindex, lindex, num_list, alphanum_list, grouping_list, mode_indicator +from amzqr.mylibs.constant import char_cap, required_bytes, mindex, lindex, num_list, alphanum_list, grouping_list, mode_indicator # ecl: Error Correction Level(L,M,Q,H) def encode(ver, ecl, str): diff --git a/MyQR/mylibs/draw.py b/amzqr/mylibs/draw.py old mode 100644 new mode 100755 similarity index 100% rename from MyQR/mylibs/draw.py rename to amzqr/mylibs/draw.py diff --git a/MyQR/mylibs/matrix.py b/amzqr/mylibs/matrix.py old mode 100644 new mode 100755 similarity index 98% rename from MyQR/mylibs/matrix.py rename to amzqr/mylibs/matrix.py index 24564d3..3904e61 --- a/MyQR/mylibs/matrix.py +++ b/amzqr/mylibs/matrix.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from MyQR.mylibs.constant import alig_location, format_info_str, version_info_str, lindex +from amzqr.mylibs.constant import alig_location, format_info_str, version_info_str, lindex def get_qrmatrix(ver, ecl, bits): num = (ver - 1) * 4 + 21 diff --git a/MyQR/mylibs/structure.py b/amzqr/mylibs/structure.py old mode 100644 new mode 100755 similarity index 90% rename from MyQR/mylibs/structure.py rename to amzqr/mylibs/structure.py index 573ec31..81285f8 --- a/MyQR/mylibs/structure.py +++ b/amzqr/mylibs/structure.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from MyQR.mylibs.constant import required_remainder_bits, lindex, grouping_list +from amzqr.mylibs.constant import required_remainder_bits, lindex, grouping_list def structure_final_bits(ver, ecl, data_codewords, ecc): final_message = interleave_dc(ver, ecl, data_codewords) + interleave_ecc(ecc) diff --git a/MyQR/mylibs/theqrmodule.py b/amzqr/mylibs/theqrmodule.py old mode 100644 new mode 100755 similarity index 91% rename from MyQR/mylibs/theqrmodule.py rename to amzqr/mylibs/theqrmodule.py index 04bf772..09331d7 --- a/MyQR/mylibs/theqrmodule.py +++ b/amzqr/mylibs/theqrmodule.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from MyQR.mylibs import data, ECC, structure, matrix, draw +from amzqr.mylibs import data, ECC, structure, matrix, draw # ver: Version from 1 to 40 # ecl: Error Correction Level (L,M,Q,H) diff --git a/MyQR/terminal.py b/amzqr/terminal.py old mode 100644 new mode 100755 similarity index 98% rename from MyQR/terminal.py rename to amzqr/terminal.py index 577bc81..90b59e7 --- a/MyQR/terminal.py +++ b/amzqr/terminal.py @@ -1,7 +1,7 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -from MyQR.myqr import run +from amzqr.amzqr import run import os def main(): diff --git a/myqr.py b/myqr.py deleted file mode 100644 index ae644bb..0000000 --- a/myqr.py +++ /dev/null @@ -1,7 +0,0 @@ -# -*- coding: utf-8 -*- - -# To be used just when MyQR is not installed - -from MyQR.terminal import main - -main() \ No newline at end of file diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..edb7d44 --- /dev/null +++ b/setup.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +import setuptools + +with open("README.md", "r", encoding="utf-8") as fh: + long_description = fh.read() + +setuptools.setup( + name='amzqr', + version='0.0.1', + keywords='qr qrcode amazing artistic animated gif colorized', + description='Generater for amazing QR Codes. Including Common, Artistic and Animated QR Codes.', + long_description=long_description, + long_description_content_type="text/markdown", + author='hw', + author_email='xhaowen.xu@gmail.com', + url='https://github.com/hwxhw/amazing-qr', + download_url='https://github.com/hwxhw/amazing-qr', + project_urls={ + "Bug Tracker": "https://github.com/hwxhw/amazing-qr/issues", + }, + install_requires=[ + 'imageio >= 1.5', + 'numpy >= 1.11.1', + 'Pillow>=3.3.1' + ], + packages=['amzqr', 'amzqr.mylibs'], + license='GPLv3', + classifiers=[ + 'Programming Language :: Python :: 3', + 'Operating System :: MacOS', + 'Operating System :: POSIX :: Linux', + 'Operating System :: Microsoft :: Windows', + 'License :: OSI Approved :: GNU General Public License v3 (GPLv3)' + ], + entry_points={ + 'console_scripts': [ + 'amzqr=amzqr.terminal:main', + ], + }, + python_requires=">=3", +)