【发布时间】:2021-09-11 01:09:27
【问题描述】:
我对使用 Reportlabs 非常陌生,并且正在尝试寻找一种更好的方法来生成如下所示的整页运输标签:
到目前为止,我有这段代码(尽管写得不好):
import datetime
from reportlab.lib import colors
from reportlab.lib.pagesizes import letter
from reportlab.pdfgen import canvas
year = datetime.date.today().year
# IIRNumber = str(int(input("Month (digit): "))) + "-" + str(int(input("Shipment Number (include zero if before 10): ")))
# VMBENumber = "VBME-" + str(year)[-2:] + "-" + str(int(input("Enter VBME Number (last four digits: ")))
# PONUmber = input("Enter PO number or V for Various: ")
IIRNumber = "08-09"
VMBENumber = "VBME-21-1458"
PONUmber = "9185555"
ShipmentNumber = int(input("How many pieces in the shipment?: "))
print(VMBENumber)
print(IIRNumber)
print(ShipmentNumber)
def textobject_demo():
my_canvas = canvas.Canvas("PDFGenerated.pdf",
pagesize=letter)
# Create text_object
text_object = my_canvas.beginText()
# Set text location (x, y)
# Write a line of text + carriage return
# Set font face and size
text_object.setFont('Times-Roman', 12)
text_object.setTextOrigin(150, 730)
for i in range(1, ShipmentNumber + 1):
# Write text to the canvas
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text='To: Voisey Bay Mine Site – EXPANSION PROJECT (VBME)')
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" C/O Innu Mikun Hangar")
text_object.textLine(text=" Happy Valley-Goose Bay, NL")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" CC0012- " + VMBENumber + " - " + IIRNumber)
text_object.textLine(text=" Product Description:" + PONUmber)
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" Box " + str(i) + " of " + str(ShipmentNumber))
text_object.textLine(text=" Gross Weight: 14 lbs")
text_object.textLine(text=" Net Weight: 14 lbs")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" Dimensions: 9 L x 9 W x 9” H")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" Special Storage Instruction: NO")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text="")
text_object.textLine(text=" Attn: IIR – REDPATH Canada Limited")
text_object.textLine(text=" Underground Garage ATTN: Mark / Shawn")
text_object.textLine(text="")
my_canvas.drawText(text_object)
my_canvas.showPage()
my_canvas.save()
if __name__ == '__main__'
textobject_demo()
有没有更好的方法?
我正在尝试简化我们使用 python 生成这些 froms 的方式,以复制和粘贴每页的信息
感谢大家的帮助
小家伙
【问题讨论】: