Python 条形码(128码)

1、code128码

选择理由:可以表示数字和字母。

条形码基本了解如图 https://baike.baidu.com/item/%E6%9D%A1%E5%BD%A2%E7%A0%81

复制代码
# -*- coding: utf-8 -*-
import os

from pystrich.code128 import Code128Encoder


class BarCode:
    def __init__(self):
        pass

    @staticmethod
    def create_folder(folder):
        abs_folder = os.path.abspath(folder)
        if not os.path.exists(abs_folder):
            try:
                os.makedirs(abs_folder)
            except Exception as e:
                print('Create folder fail:{}'.format(e))

    def generate(self, info, save_path):
        asb_save_path = os.path.abspath(save_path)
        folder = os.path.dirname(asb_save_path)
        self.create_folder(folder)
        options = {"bottom_border": 10, "height": 200, "label_border": 2}
        try:
            encoder = Code128Encoder(info, options=options)
            encoder.save(asb_save_path)
            print('Generate bar code success, save to:{}'.format(asb_save_path))
        except Exception as e:
            print('Generate bar code fail:{}'.format(e))


def debug():
    bar = BarCode()
    bar.generate('ADFF15645', './test.png')


if __name__ == '__main__':
    debug()
复制代码

运行截图

 

posted @   南风丶轻语  阅读(983)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示