2016-06-13 27 views
0

我想生成code128條形碼使用Python/Elaphe,這是基於條碼作家在純後記(BWIPP)。奇怪的是,Elaphe生成的條形碼與BWIPP生成的條形碼不符,並且不符合128位標準。Python/Elaphe生成破碎的條碼

特別,我想一個簡單的例子,對於字母「A」(大寫A)條形碼的產生:

from elaphe import barcode 
b = barcode('code128', 'A') 
b.show() 

這工作得很好,但生成的條形碼缺少右部。它的寬度是35像素,它應該是46.條形碼的左側部分與BWIPP和其他所有代碼生成器生成的相匹配 - 這只是右側缺失的部分。

任何人都知道什麼是錯的?

(上的Kubuntu 15.10使用王錦0.6.0與Python 2.7.10)

+0

向我們展示這兩個圖像。 – tobltobs

+0

[鏈接] http://imgur.com/a/DlFKP – nerimarkinde

回答

0

看到這個錯誤報告: https://bitbucket.org/whosaysni/elaphe/issues/84/code-128-generation-produces-unreadable

看來,這個錯誤是固定的電流源的版本,也是錯誤仍然被標記爲新的。 的其中固定此bug IMHO補丁: https://bitbucket.org/whosaysni/elaphe/commits/19dd8f58c76ac75914e3e4d8ae7db1b9489cbcb8?at=develop

此修補程序是從2014年10月22日,PyPI上的當前版本錦蛇皮0.6.0是從2013年12月5日。如果您通過pip安裝,則會出現錯誤版本。

這個項目有一個python3啓用分支https://pypi.python.org/pypi/elaphe3,它已於2016-05-25上傳。所以這個分支可能包含必要的錯誤修正。你可以刪除elaphe並安裝elaphe3。

但是,考慮到elaphe(至少非3版本)看起來很遺憾,並且將GhostScript和PIL作爲依賴關係,我會尋找其他解決方案。

+0

非常感謝您的研究和解釋!我看了看,發現了zint,它滿足了我需要的一切。我只需要將它作爲shell命令運行即可。 – nerimarkinde