【发布时间】:2015-10-26 16:23:26
【问题描述】:
我正在尝试使用viivakoodi library 获取字母数字编码的条形码。我得到了我需要的条形码,但我无法使用 Jinja2 在我的 HTML 页面中显示它。这是我的代码:
import barcode
from StringIO import StringIO
encoding_std = barcode.get_barcode_class('code128')
ean = encoding_std('Test123')
fp = StringIO()
ean.write(fp)
encoded_output = fp.getvalue()
fp.close()
我目前将条形码存储为 SVG,但无法在 HTML 页面中显示。在 HTML 页面中使用 {{ encoded_ouput | safe }} 来显示条形码并没有显示结果:
<div class="row border-bottom no-margin" style="height: 15%">
<div class="float-left border-right"
style="width: 100%; padding: 5px; height: 100%;font-family:arial">
<p style="font-weight:bold; margin-bottom: 0; font-family:arial; font-size:13px">
<b>Generated Barcode Space:</b></p><b>
{{ encoded_output | safe }}
</b></div>
</div>
或者是否有任何 Jinja2 过滤器来获取 SVG?
【问题讨论】:
-
你能告诉我们你的 Jinja2 代码吗?一个完整的测试页面就可以了(因此只有用于显示生成的 SVG 的标签)。
-
另外,您使用的是什么
barcode包? pyBarcode 项目doesn't seem to support that class. -
我正在使用 viivakoodi 库,该库的链接pypi.python.org/pypi/viivakoodi/0.8.0,我使用了这个库,因为我正在使用 python27。我猜 pyBarcode 不提供条形码的字母数字编码,所以我使用了这个库
-
您的代码有效,至少当我使用
| safe和 viivakoodi 库尝试您的模板时。