gpt4 book ai didi

python - 使用 pybarcode ImageWriter 和 docx 模块将条形码图像附加到 docx 文件

转载 作者:太空宇宙 更新时间:2023-11-04 06:22:47 26 4
gpt4 key购买 nike

如何减小由 pybarcode ImageWriter 生成的图像大小,以及如何将多个图像附加到正确对齐的 docx 文件中?

我阅读了 ImageWriter 的 dpi 选项,但不知道如何使用它。

import barcode
from barcode.writer import ImageWriter
from docx import *

if __name__ == '__main__':
# Default set of relationshipships - these are the minimum components of a document
ean = barcode.get_barcode('ean', '123456789102', writer=ImageWriter())
ean.default_writer_options['module_height'] = 3.0
ean.default_writer_options['module_width'] = 0.1
filename = ean.save('bar_image')

relationships = relationshiplist()

# Make a new document tree - this is the main part of a Word document
document = newdocument()

# This xpath location is where most interesting content lives
docbody = document.xpath('/w:document/w:body', namespaces=nsprefixes)[0]
# Add an image
relationships,picpara = picture(relationships, filename,'This is a test description')
docbody.append(picpara)

# Create our properties, contenttypes, and other support files
coreprops = coreproperties(title='Python docx demo',subject='A practical example of making docx from Python',creator='Mike MacCana',keywords=['python','Office Open XML','Word'])
appprops = appproperties()
contenttypes = contenttypes()
websettings = websettings()
wordrelationships = wordrelationships(relationships)

# Save our document
savedocx(document,coreprops,appprops,contenttypes,websettings,wordrelationships,'sample_barcode.docx')

最佳答案

通常,barcode.writer 不会给出生成的输出图像大小的参数,你可能会问PIL帮助。并且正确对齐对于代码而言并不准确,但您可以尝试使用表格将它们放在正确的位置。

在 PIL 中,您可以将 png 图像的大小调整为 (480,320)

from PIL import Image
im = Image.open("barcode.png")
im.resize((480,320)).save("barcode_resized.png")

对于 docx 文件,一些表格示例是 here ,您可能需要知道适当的食物是什么,然后输入代码。

关于python - 使用 pybarcode ImageWriter 和 docx 模块将条形码图像附加到 docx 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10772522/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com