#-- encoding: utf-8 -- import logging import sys import os import pygame from pygame.locals import * from hubarcode.code128 import Code128Encoder from PIL import Image,ImageDraw,ImageFont
logging.getLogger("code128").setLevel(logging.DEBUG)
logging.getLogger("code128").addHandler(logging.StreamHandler(sys.stdout))
12-80 10-80 10-60 12-60 10-70 12-70 10-70
''' 使用huBarcode,pygame和PIL生成条形码 ''' if name == "main":
代码语言:javascript复制#1 生成条形码
text = "068080835AD000D10701014111".upper()
encoder = Code128Encoder(text,options={"ttf_font":"C:/Windows/Fonts/SimHei.ttf","ttf_fontsize":12,
"bottom_border":15,"height":70,"label_border":2}) encoder.save("test.png",bar_width=1)
2 生成条码描述
代码语言:javascript复制pygame.init()
content = u"P07D111140 T07D1111407010 20150321113322"
font = pygame.font.SysFont('SimHei', 10)
ftext = font.render(content, True, (0, 0, 0))
pygame.image.save(ftext, "t.png")
3 合成中文文字到条形码,生成新的条码
代码语言:javascript复制img = Image.open("test.png")
img_w, img_h = img.size
icon = Image.open("t.png")
icon_w, icon_h = icon.size
icon = icon.resize((icon_w, icon_h), Image.ANTIALIAS)
w = int((img_w - icon_w) / 2)
h = int((img_h - icon_h) / 2) 35
icon = icon.convert("RGBA")
img.paste(icon, (w, h), icon)
img.save(text ".png") </pre>