使用Python创建标准条码。不需要外部模块(包含可选的PIL支持)。
项目描述
Viivakoodi (芬兰语中的条码) 是 pyBarcode 项目的分支。
此库提供了使用Python标准库创建条码的简单方法。条码作为SVG对象创建。
在 https://github.com/kxepal/viivakoodi/issues/ 报告错误
要求
Setuptools/distribute用于安装(自0.7beta4版新增)
Python 2.6或更高版本(包括Python 3.x)
在Python 2.6、3.0、3.1上:argparse(用于命令行脚本)
打开SVG对象的程序(您的浏览器应该可以做到这一点)
可选:PIL将条码渲染为图像(PNG、JPG等)
安装
请确保已安装setuptools/distribute。
解压缩下载的文件,进入viivakoodi目录并运行 python setup.py install。或者只需将条码目录复制到您的PYTHONPATH中的某个位置。
最佳方式是使用pip: pip install 条码库。
提供的条码
EAN-8, EAN-13, UPC-A, JAN, ISBN-10, ISBN-13, ISSN, Code 39, Code 128, PZN
待办事项
添加文档
添加更多代码
改进Python 3支持
添加简单GUI
用法
交互式
>>> import barcode >>> barcode.PROVIDED_BARCODES [u'code39', u'code128', u'ean', u'ean13', u'ean8', u'gs1', u'gtin', u'isbn', u'isbn10', u'isbn13', u'issn', u'jan', u'pzn', u'upc', u'upca'] >>> EAN = barcode.get_barcode_class('ean13') >>> EAN <class 'barcode.ean.EuropeanArticleNumber13'> >>> ean = EAN(u'5901234123457') >>> ean <barcode.ean.EuropeanArticleNumber13 object at 0x00BE98F0> >>> fullname = ean.save('ean13_barcode') >>> fullname u'ean13_barcode.svg' # Example with PNG >>> from barcode.writer import ImageWriter >>> ean = EAN(u'5901234123457', writer=ImageWriter()) >>> fullname = ean.save('ean13_barcode') u'ean13_barcode.png' # New in v0.4.2 >>> from StringIO import StringIO >>> fp = StringIO() >>> ean.write(fp) # or >>> f = open('/my/new/file', 'wb') >>> ean.write(f) # PIL (ImageWriter) produces RAW format here # New in v0.5.0 >>> from barcode import generate >>> name = generate('EAN13', u'5901234123457', output='barcode_svg') >>> name u'barcode_svg.svg' # with file like object >>> fp = StringIO() >>> generate('EAN13', u'5901234123457', writer=ImageWriter(), output=fp) >>>
现在在图形应用程序或您的浏览器中打开 ean13_barcode.[svg|png],然后查看创建的条码。就是这样。
命令行
$ pybarcode{2,3} create "My Text" outfile New barcode saved as outfile.svg. $ pybarcode{2,3} create -t png "My Text" outfile New barcode saved as outfile.png. Try `pybarcode -h` for help.
变更日志
- v0.8:
添加了Code 128。字符集和数据条移至子包barcode.charsets。
- v0.7:
修复了字体大小和字体对齐的一些问题。添加了Python 3支持。尚未经过充分测试,但使用Python 3.3运行测试时没有错误。增加了命令行脚本。
- v0.6:
将保存和写入方法修改为接收字典形式的选项,而不是关键字参数(请在您的代码中修复此问题)。添加了在条码下左对齐文本的选项。修复了EAN13生成的错误。
- v0.5.0:
添加了新的生成函数,一步完成所有生成操作。将writer从子包移至模块(这会破坏一些现有代码)。UPC现在以真实的UPC形式渲染,而不是以带前导“0”的EAN13形式。
- v0.4.3:
修复了新写入方法中的错误(与PIL相关)并更新了文档。
- v0.4.2:
添加了写入方法以支持将目标作为文件对象。
- v0.4.1:
错误修复版本。移除了输入验证中的冗余。EAN8有问题。现在它按预期工作。
- v0.4:
从writers __init__ 方法中移除了 **options。这些选项从未起作用。它们总是被默认选项覆盖。新的配置选项:text_distance(条码和文本之间的距离)。
- v0.4b2:
包含了基本文档。现在条码对象有一个新的属性称为 raw,用于获取渲染输出而不保存到磁盘。
- v0.4b1:
实现了将条码作为图像渲染的支持。使用PIL是必须的。
- v0.3:
SVG输出的压缩现在有效。
- v0.3b1:
Writer API已更改,以便简单地添加新的(自己的)writer。现在SVG输出使用xml.dom模块生成,而不是字符串格式化(使其更健壮)。
- v0.2.1:
render的API已更改。现在render接收关键字参数,而不是字典。
- v0.2:
增加了更多测试。
- v0.1:
第一个版本。
项目详情
viivakoodi-0.8.0.tar.gz的散列值
算法 | 散列摘要 | |
---|---|---|
SHA256 | 670a35774559b25abdb089d58fb8e67e4ee9618f385b8418e5027ab860290e39 |
|
MD5 | e45ef707ae024e46546289c443cb9646 |
|
BLAKE2b-256 | 81e4a3f5ec32529004c9f0aae1e7c4f6e63c260ad21805578030c4c6ae1677a7 |