我正在尝试使用Python/Elaphe生成code128条形码,它基于纯Postscript中的条形码写入器(BWIPP)。奇怪的是,Elaphe生成的条形码与BWIPP生成的条形码不匹配,也不符合Code128标准。
特别是,我尝试了一个简单的例子,生成字母'A‘(大写A)的条形码:
from elaphe import barcode
b = barcode('code128', 'A')
b.show()这工作得很好,但生成的条形码缺少正确的部分。它有35个像素宽,应该是46个像素。条形码的左侧部分与BWIPP和所有其他code128生成器生成的条形码相匹配-只缺少右侧部分。
有人知道哪里出问题了吗?
(在Kubuntu 15.10上使用elaphe 0.6.0和python 2.7.10 )
发布于 2016-06-16 08:34:13
请参阅此错误报告:https://bitbucket.org/whosaysni/elaphe/issues/84/code-128-generation-produces-unreadable
这个bug似乎已经在当前的源代码版本中修复了,而且这个bug仍然被标记为新的。修复这个bug的补丁imho:https://bitbucket.org/whosaysni/elaphe/commits/19dd8f58c76ac75914e3e4d8ae7db1b9489cbcb8?at=develop
此补丁来自2014-10-22,pypi上的当前版本elaphe 0.6.0来自2013-12-05。如果你是通过pip安装的,那么你的版本就是buggy。
此项目https://pypi.python.org/pypi/elaphe3有一个启用了python3的分支,该分支已上传到2016-05-25。所以这个fork可能包含必要的错误修复。您可以删除elaphe并安装elaphe3。
然而,考虑到elaphe (至少是非3版本)看起来被遗弃了,并且有GhostScript和PIL作为依赖,我会寻找另一个解决方案。
https://stackoverflow.com/questions/37800370
复制相似问题