removed unwanted trailing spaces from fpdf
This commit is contained in:
@@ -18,7 +18,7 @@ class Template:
|
||||
if elements:
|
||||
self.elements = elements
|
||||
self.keys = [v['name'].lower() for v in self.elements]
|
||||
self.handlers = {'T': self.text, 'L': self.line, 'I': self.image,
|
||||
self.handlers = {'T': self.text, 'L': self.line, 'I': self.image,
|
||||
'B': self.rect, 'BC': self.barcode, }
|
||||
self.pg_no = 0
|
||||
self.texts = {}
|
||||
@@ -38,7 +38,7 @@ class Template:
|
||||
for row in csv.reader(open(infile, 'rb'), delimiter=delimiter):
|
||||
kargs = {}
|
||||
for i,v in enumerate(row):
|
||||
if not v.startswith("'") and decimal_sep!=".":
|
||||
if not v.startswith("'") and decimal_sep!=".":
|
||||
v = v.replace(decimal_sep,".")
|
||||
else:
|
||||
v = v
|
||||
@@ -53,7 +53,7 @@ class Template:
|
||||
def add_page(self):
|
||||
self.pg_no += 1
|
||||
self.texts[self.pg_no] = {}
|
||||
|
||||
|
||||
def __setitem__(self, name, value):
|
||||
if self.has_key(name):
|
||||
if isinstance(value,unicode):
|
||||
@@ -69,7 +69,7 @@ class Template:
|
||||
|
||||
def has_key(self, name):
|
||||
return name.lower() in self.keys
|
||||
|
||||
|
||||
def __getitem__(self, name):
|
||||
if self.has_key(name):
|
||||
key = name.lower()
|
||||
@@ -101,7 +101,7 @@ class Template:
|
||||
return pdf.multi_cell(w=element['x2']-element['x1'],
|
||||
h=element['y2']-element['y1'],
|
||||
txt=text,align=align,split_only=True)
|
||||
|
||||
|
||||
def render(self, outfile, dest="F"):
|
||||
pdf = self.pdf
|
||||
for pg in range(1, self.pg_no+1):
|
||||
@@ -118,11 +118,11 @@ class Template:
|
||||
self.handlers[element['type'].upper()](pdf, **element)
|
||||
if 'rotate' in element:
|
||||
pdf.rotate(0)
|
||||
|
||||
|
||||
return pdf.output(outfile, dest)
|
||||
|
||||
def text(self, pdf, x1=0, y1=0, x2=0, y2=0, text='', font="arial", size=10,
|
||||
bold=False, italic=False, underline=False, align="",
|
||||
|
||||
def text(self, pdf, x1=0, y1=0, x2=0, y2=0, text='', font="arial", size=10,
|
||||
bold=False, italic=False, underline=False, align="",
|
||||
foreground=0, backgroud=65535, multiline=None,
|
||||
*args, **kwargs):
|
||||
if text:
|
||||
@@ -201,7 +201,7 @@ if __name__ == "__main__":
|
||||
title="Sample Invoice", author="Sample Company",
|
||||
subject="Sample Customer", keywords="Electronic TAX Invoice")
|
||||
f.parse_csv(infile="invoice.csv", delimiter=";", decimal_sep=",")
|
||||
|
||||
|
||||
detail = "Lorem ipsum dolor sit amet, consectetur. " * 30
|
||||
items = []
|
||||
for i in range(1, 30):
|
||||
@@ -210,7 +210,7 @@ if __name__ == "__main__":
|
||||
price = round(random.random()*100,3)
|
||||
code = "%s%s%02d" % (chr(random.randint(65,90)), chr(random.randint(65,90)),i)
|
||||
items.append(dict(code=code, unit='u',
|
||||
qty=qty, price=price,
|
||||
qty=qty, price=price,
|
||||
amount=qty*price,
|
||||
ds="%s: %s" % (i,ds)))
|
||||
|
||||
@@ -253,7 +253,7 @@ if __name__ == "__main__":
|
||||
f["company_name"] = "Sample Company"
|
||||
f["company_logo"] = "tutorial/logo.png"
|
||||
f["company_header1"] = "Some Address - somewhere -"
|
||||
f["company_header2"] = "http://www.example.com"
|
||||
f["company_header2"] = "http://www.example.com"
|
||||
f["company_footer1"] = "Tax Code ..."
|
||||
f["company_footer2"] = "Tax/VAT ID ..."
|
||||
f['number'] = '0001-00001234'
|
||||
@@ -261,9 +261,9 @@ if __name__ == "__main__":
|
||||
f['due_date'] = '2099-09-10'
|
||||
f['customer_name'] = "Sample Client"
|
||||
f['customer_address'] = "Siempreviva 1234"
|
||||
|
||||
|
||||
# print line item...
|
||||
li = 0
|
||||
li = 0
|
||||
k = 0
|
||||
total = Decimal("0.00")
|
||||
for it in li_items:
|
||||
@@ -293,9 +293,10 @@ if __name__ == "__main__":
|
||||
else:
|
||||
f['total_label'] = 'SubTotal:'
|
||||
f['total'] = "%0.2f" % total
|
||||
|
||||
|
||||
f.render("./invoice.pdf")
|
||||
if sys.platform.startswith("linux"):
|
||||
os.system("evince ./invoice.pdf")
|
||||
else:
|
||||
os.system("./invoice.pdf")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user