今日、バーコードを生成するためにその目的のためにアイテム#または任意の番号をとるスクリプトを作成しました。今では、4つの列に60の同じバーコードを印刷したいと思っていました。これは、(15 X 4)のマトリックスになって理解しやすくなりました。今私は正常にカスタムサイズのページ(900 * 850)でそれを達成し、レポート行code128によって生成された15行と4列のバーコードに当てはまりました。ページサイズの問題reportlabを使用したバーコードのPDF作成
from reportlab.graphics.barcode import code128
from reportlab.lib.units import mm
from reportlab.pdfgen import canvas
#----------------------------------------------------------------------#
def createBarCodes():
codeName = "NOT_C17"
c = canvas.Canvas(codeName+".pdf")
c.setPageSize((900, 850))
barcode_value = codeName
barcode128 = code128.Code128(
barcode_value,
barHeight=20,
barWidth=1.05,
fontSize=15,
humanReadable = True
)
x = 15 * mm
for i in range(4):
y = 275 * mm
i=0
while i < 15:
barcode128.drawOn(c, x, y)
y = y - 18 * mm
i+=1
x=x+(70*mm)
c.save()
if __name__ == "__main__":
createBarCodes()
A file generated by this script
問題は、今私が唯一のUSレターサイズとなし、他のカスタムサイズを使用するように制限していますということです。ここで
コードがあります。私はバリエーションはほとんど試していませんが、どれもうまくいきませ
試みます。
from reportlab.lib.pagesizes import letter
c = canvas.Canvas(codeName+".pdf", pagesize=letter)
barcode_value = codeName
barcode128 = code128.Code128(
barcode_value,
barHeight=16.7564*mm,
barWidth=44.45*mm,
fontSize=15,
humanReadable = True
)
x = 7.526 * mm
for i in range(4):
y = 265.524 * mm
i=0
while i < 15:
barcode128.drawOn(c, x, y)
y = y - 18 * mm
i+=1
break
x=x+(70*mm)
break
c.save()
とhereはそれが収まる必要があります必要な形式では、助けるために持っていいだろう。
コードは完璧ですが、codeName = "NOT_C17"の場合のみです。私はいくつかの人に疲れてしまい、結果がすべて乱れてしまったので、ブロックの所与のサイズに合うようにバーコードを制限するために何をすべきか教えてください。 「NOT_C17」または「HDW_32-0.125」で試してください。この最後の1つは、私がそれを試したときにかなり混乱しています。ありがとう – R0SENAM
私はそれを行うコードを編集しました – SEDaradji